Croatia's Boris Zivkovic was shown the tournament's first red card when conceding the match-winning penalty to Mexico in Niigata.
Zivkovic was dismissed on the hour for a clumsy tackle on Cuauhtemoc Blanco, who picked himself up to score from the spot.
The first battle is over, but the war is not lost
Croatia coach Mirko Jozic
It got the Mexicans off to a winning start in an otherwise disappointing Group G opener.
Croatia's Robert Prosinecki had the game's first sight of goal, blasting a 25-yard free-kick high over the bar on three minutes.
The Croatians came even closer to taking the lead three minutes later when Mexico keeper Oscar Perez arched backward to brilliantly tip Josip Simunic's header away for a corner.
Zvonimir Soldo then fired over from 10 yards as the Croatians continued to make the early running.
Mexico struggled to physically impose themselves in midfield and it was 15 minutes before they fashioned their first opening, with Gerardo Torrado blasting over from long-range.
Simunic was a dangerous presence in the Mexican penalty box at set-pieces, but his defensive capabilities were questioned on 31 minutes.
Kovac is shaken off by Borgetti (left) and Morales
He lost Blanco at a corner and was relieved when the Mexican striker planted his header straight at keeper Stipe Pletikosa.
Mexico wasted a golden chance to take the lead on 33 minutes when Ramon Morales dragged the ball across the face of goal and Jared Borgetti side-footed wide from six yards out.
The Mexicans ended the half in the ascendancy, with Torrado curling a 25-yard shot straight at Pletikosa.
Perez needed to be alert at the start of the second-half to athletically palm away a powerful header from Zvonimir Soldo.
And the game finally burst to life on the hour when Zivkovic's clumsy challenge on Blanco earned Mexico a penalty and the first red-card of the tournament for the Croatian who was adjudged to be the last defender.
Blanco picked himself up to confidently blast the penalty home.
Perez almost gifted Croatia an equaliser on 64 minutes when he fumbled Soldo's long-range shot, and was relieved as the ball bobbled wide of the goal.
Croatia's chances of salvaging the game were limited with their bizarre substitution of both main strikers Davor Suker and Alen Boksic.
Mexico controlled the game against ten men and should have sealed the points when Morales snatched at his shot from ten yards.
But another point-blank save from Perez denied Simunic an equaliser right at the death.
Croatia: Pletikosa, Simunic, Tomas, Zivkovic, Robert Kovac,
Jarni, Niko Kovac, Prosinecki (Rapaic 45), Soldo,
Boksic (Stanic 67), Suker (Saric 64).
Subs not used: Seric, Vugrinec, Butina, Vranjes, Olic, Vlaovic, Simic, Balaban, Vasilj.
Sent off: Zivkovic (60).
Mexico: Perez, Vidrio, Marquez, Carmona, Morales, Torrado,
Caballero, Luna, Mercado, Borguetti (Hernandez 68),
Blanco (Palencia 79).
Subs not used: Gabriel De Anda, Garcia Aspe, Garcia, Sanchez, Villa, Alberto Rodriguez, Brown, Arellano, Johan Rodriguez, Campos.
Goals: Blanco 61 (pen).
Referee: Jun Lu (China).
MATCH STATS |
| Croatia | Mexico |
Corners (1st half) | 6 | 3 |
Corners (2nd half) | 5 | 0 |
Fouls committed | 16 | 18 |
Caught offside | 7 | 1 |
Shots on target | 5 | 5 |
Shots off target | 5 | 4 |
Hit woodwork (back into play) | 0 | 0 |
Yellow cards | 0 | 0 |
Red cards | 1 | 0 |
STOPPAGE TIME | |
First half - 2 mins | Second half - 3 mins |