Euro 2012 favourites Germany started their campaign with a narrow 1-0 victory over Portugal on Saturday, while Holland suffered a shock 0-1 defeat to Denmark in the other Group B encounter.

Mario Gomez's header in the 72nd minute gave the Germans all three points and sent them joint-top of the group alongside the Danes, who pulled off an upset against the Dutch thanks to a calm finish from Michael Krohn-Dehli midway through the first half.

Germany dominated Portugal in the game at Lviv and created several clear-cut opportunities in the first half to open the scoring but forwards Gomez, Lukas Podolski and Thomas Muller failed to find the back of the net.

Despite controlling the game, Germany almost fell behind in the last minute of the first-half as Pepe's powerful drive, from a Raul Meireles corner, rattled the underside of the crossbar and bounced off the line.

Portugal started creating more chances after the break and Jerome Boateng had to make a last-ditch effort to deny Cristiano Ronaldo when the Real Madrid man was through on goal. The game soon became a cagey affair as Portugal decided to defend deep and denied Die Mannschaft any space between their midfield and defence. However, with 18 minutes to go, Germany made the all-important breakthrough.

When Gomez, who had been left frustrated througout the match, was set to be replaced by Miroslav Klose, Sami Khedira sent a brilliant cross to the far side and the Bayern Munich hitman came up with an emphatic header across goal that gave goalkeeper Rui Patricio no chance.

Portugal substitute Silvestre Varela had a massive chance to save a point for his side two minutes from time but the winger was denied from close range by Manuel Neuer. A late Nani effort was blocked in front of goal with Bruno Alves sending his header from the resulting corner over the bar as Germany held on for victory.

Meanwhile, tournament favourites Holland paid the price for failing to score after starting positively against the Danes in Kharkiv. Despite dominating possession, the Oranje were left shooting from distance as Denmark defended in numbers.

Then, against the run of play, Morten Olsen's men took the lead in the 24th minute when former Ajax midfielder Krohn-Dehli ran in and fired low past Maarten Stekelenburg, following a quick break into the box.

The Dutch kept their composure even after going behind and nearly found an equaliser before the break when Arjen Robben's curling low effort smacked the post after a poor clearance from the Danish goalkeeper Stephan Andersen went straight at the Bayern winger.

Bert van Marwijk's side came out attacking in the second half and created a host of chances but failed to score, with Robin van Persie and Ibrahim Afellay chiefly at fault for misfiring from decent positions.

Klaas-Jan Huntelaar had a go at goal after coming on but the striker sent the ball straight at Andersen from a one-on-one chance after being released by Wesley Sneijder, while Robben also headed wide from a Sneijder cross.

Holland lacked energy and sharpness in their attack as Denmark held firm at the back. The Danes survived a late flicked header from van Persie that flew just over the bar. The Dutch players thought they had finally got chance to draw level when they appealed for a handball against Lars Jacobsen in the area but the referee turned down the protests.

Holland face Germany in their next match on Wednesday, while Denmark entertain Portugal.