Manchester City frittered away a decent chance to put pressure on Premier League leader Manchester United as last-place QPR eked out a 0-0 draw at Loftus Road.
On a day dominated by Mario Balotelli's expected move to AC Milan, Roberto Mancini's side could have done with a moment of magic from the Italy international. Defensive heroics from the hosts and the fine form of Julio Cesar denied City in west London, leaving them four points behind rivals United.
QPR, showing eight changes following their embarrassing defeat to MK Dons, seemed happy to sit back and soak up Manchester City pressure, with the hope of catching them on the break. It was a dangerous ploy and one that threatened to catch them out on a number of occasions during the opening 20 minutes.
The home side's Nedum Onuoha, a graduate of the City academy, did well to clear away a threatening Samir Nasri cross, before Shaun Derry threw himself in front of a Sergio Aguero strike. Joleon Lescott volleyed over after QPR goalkeeper Cesar failed to deal with a David Silva corner.
The Brazilian shot-stopper was quick to make amends, though, preventing Ryan Nelsen deflecting a James Milner shot into his own goal. Clint Hill cleared a low Aguero cross that look set to be turned in as Mancini's men continued to press for an opener. That attacking impetus saw Silva send over a delicate dinked cross, which Zabaleta met with a powerful header that rattled the bar.
QPR were starting to get more joy on the break and, after Aguero saw a goal ruled out for offside, Taarabt went close to breaking the deadlock. The Moroccan playmaker burst forward and a stepover easily took him past Gael Clichy, only to see his goalbound strike superbly kept out by Hart, making his 150th league start for City.
Mancini brought on Edin Dzeko after the break as City searched for a winner but it was QPR that were next to have a chance, with Remy curling wide.
The change was soon having an impact as City attacking with renewed vigour. Cesar denied Silva after a neat one-two with Carlos Tevez, before Dzeko nodded over from a corner and Aguero mis-hit a Zabaleta cutback. Milner was next to get a shot away for City, moments after Remy saw penalty appeals waved away.
Cesar somehow kept out Silva from a Dzeko cross, before the Spaniard saw a fierce drive thwarted by Nelsen. There was to be no City winner, though, and QPR's players gave Nelsen a guard of honour on what was his final game for the club before taking over as Toronto FC head coach.