Italy totally dominated the first period and went in at the break a goal to the good through a sumptuous Andrea Pirlo free-kick. But a defensive error allowed Mario Mandzukic to equalise in the final 20 minutes and keep Croatia at the top of the group on four points.
The first half was one-way traffic and Gli Azzurri deserved more than the single goal they registered. Having been such a disappointment against Spain, Mario Balotelli seemed more awake here and shot wide after a neat turn on three minutes, making the most of limited space in the box.
Pirlo puts Italy ahead
Claudio Marchisio rifled a shot over the bar while a Balotelli shot from the edge of the area was punched clear by goalkeeper Stipe Pletikosa. Croatia were struggling to create anything of note but Nikica Jelavic was a shoelace away from turning in Darijo Srna's cross at the near post.
Italy coach Cesare Prandelli had asked his team to get in behind the defence and Antonio Cassano did exactly that to meet Leonardo Bonucci's flick over the top but he screwed his effort wide.
Pletikosa came to his side's rescue on 37 minutes as he made a double save from Claudio Marchisio, who latched onto Cassano's pass, turned a sliding Srna but then could not find the finish to beat the goalkeeper, who spread himself to deny the Juventus midfielder.
Italy got the goal their dominance deserved two minutes later as Pirlo curled an exquisite free-kick over the wall and inside the post. Cassano almost added a second before the break with a flicked header from Pirlo's corner that went just over.
Right on the stroke of half-time Croatia broke but Gianluigi Buffon comfortably stopped Mandzukic's shot. Croatia started a bit brighter in the second period and Luka Modric got a shot away that Buffon again gathered comfortably before sending another over the bar.
Mandzukic makes it 1-1
Balotelli had a crack from distance that sailed over but then, out of the blue, Croatia equalised. Ivan Strinic sent over a cross from deep and Italy centre-back Giorgio Chiellini mistimed his jump, allowing Mandzukic to bring the ball down and fire home off the near post from six yards.
Substitute Riccardo Montolivo had a shot from distance for Italy that Pletikosa dealt with. But it was the Croats who were pushing hardest for a winner in the closing stages, without creating anything of note.