AC Milan missed the chance to close within a point of Serie A leader Inter Milan on Saturday when it was held 0-0 at AS Roma.
Second-placed Milan was on top for most of the match and Klaas-Jan Huntelaar headed over a great chance to break the deadlock in the closing stages.
The result will have cheered Inter coach Jose Mourinho, whose side can stretch its lead over Milan to six points and pull nine ahead of Roma by beating Genoa at home.
Inter has 58 points with Milan on 55 and Roma 52.
Juventus boosted its Champions League qualification hopes with a 2-1 win at Fiorentina that lifted it to fourth.
Roma made an aggressive start at a packed Stadio Olimpico with Daniele De Rossi shooting just wide and Julio Baptista forcing a decent save from Christian Abbiati with a powerful strike early on.
But Milan gradually worked its way into the match and it was in control by the middle of the first half.
Marco Borriello blasted wide a good chance set up by Ronaldinho's pass and Roma defender Nicolas Burdisso was lucky an attempt to head away a Mathieu Flamini cross did not fly into his own net.
The visitors continued to make the running after the break and Roma's Julio Sergio just managed to scramble the ball away in the 55th when Borriello burst into the area and aimed inside the near post.
In Florence, Italy full back Fabio Grosso, who came on as a substitute at the start of the second half, fired home what proved to be the winner from a tight angle in the 68th minute.
Juve's Brazilian playmaker Diego had dribbled past keeper Sebastien Frey and slotted into an empty net to give the visitors the lead in the second minute after Antonio Candreva had sprung the offside trap with a smart pass. Former Juve midfielder Marco Marchionni headed the home side level in the 32nd.
Juve has 44 points from 27 games while faltering Fiorentina is 10th.