Mario Mandzukic and Ivan Rakitic both had earlier chances to break the deadlock and Croatia kept pushing deep into injury-time as they sought the equaliser that could still have sent them through.
Resolute in defence and surging down the flanks on the counter-attack, Croatia kept the Spaniards at bay for long periods and Vicente Del Bosque's team will be extremely relieved to have come out on top of their group.
In a poor first period, Fernando Torres came closest to breaking the deadlock when he brought a good save out of Croatia goalkeeper Stipe Pletikosa in the 23rd minute.
Although Spain dominated most of the early possession, chances were at a premium, with Jordi Alba blazing wide and Andres Iniesta poking a shot goalwards where it was saved by Pletikosa.
But after Gerard Pique shot over the bar, Croatia replied with some pressure of their own, Danijel Pranjic shooting low at Iker Casillas and Mandzukic blazing over the bar from just inside the box.
Croatia had a loud penalty appeal turned down in the 27th minute when Mandzukic's charge down the right flank was brought to an end by a crashing challenge from Ramos on the edge of the box, but referee Wolfgang Stark waved Croatian appeals away.
Knowing they were likely to need a goal to give them a chance of reaching the last eight, Croatia made a brighter start to the second half with a dangerous corner from Rakitic punched away by Casillas.
Iniesta almost threaded a ball through to Torres in the 52nd minute but Croatia were still brighter, and Mandzukic was clearly showing no ill effects from his first-half knock as he stretched the Spanish defence.
And Croatia came agonisingly close to taking the lead in the 59th minute when Luka Modric beat Ramos on the right and crossed into the box where Rakitic's low header was brilliantly saved at point-blank range by Casillas.
But Croatia came close again in the 69th minute when two of their substitutes combined, Ivan Perisic finding space on the left to loft a cross which floated inches too high for Nikica Jelavic in front of goal.
Del Bosque introduced Cesc Fabregas who failed to get his shot off in a crowded box in the 78th minute, then Sergio Busquets missed a glorious chance with 10 minutes to go when he hesitated in the box and was dispossessed by Croatia captain Darijo Srna.
Fabregas was having a major influence in calming Spanish nerves and he made the crucial move in the 87th minute when he lobbed Pletikosa to send Iniesta clear, and he squared for substitute Navas to tap home the simplest of chances.
adidas has added some color to the Predator line with this new colorway. Released on May 17. Be the first to own a pair.
The Liverpool 2013/14 soccer jersey is available for pre-order. The Reds are eager to compete for silver next season.
Ajax has released their away soccer jersey for the 2013/14 season. Get in the Gear.
The push for more color on their cleats, adidas has added the infrared colorway to the adiZero f50 Line.
Chelsea won the Europa League on Wednesday. The Blues defeated Benfica 2-1 on injury time goal from Ivanovic.
The new PUMA evoSPEED 1.2 FG. A great new soccer cleat with classic look and first time for PUMA to be on the cleat.
Borussia Dortmund hears Wembley Calling and are headed to London for the Champions League final.
The Juventus jersey for the 2013/14 was released earlier this week. Be the first to wear the colors of the Old Lady.
Bayern Munich are kings of Germany and hope to be crowned kings of Europe at Wembley later this month!
The adidas Nitrocharge is the most talked about new cleat in years. It was released on May 15 and will take your pitch by storm.