Jesse Marsch's men lost Liam Cooper to injury in the warm-up and had to replace Stuart Dallas late in the first half as the Northern Irishman was stretchered off with what appeared to be a serious knee problem.
Rodri's headed opener from a Phil Foden free-kick separated the sides at the break, although Leeds were well in the game, and then Nathan Ake gave the hosts a mountain to climb with another goal from a set-piece.
Leeds huffed and puffed and continued to work but were undone too easily by a back to front move that was finished ruthlessly by Gabriel Jesus with 12 minutes remaining. Fernandinho added insult to injury in stoppage time, drilling past Illan Meslier from distance.
The result, coupled with Burnley's come-from-behind win over Watford, leaves Leeds five points ahead of 18th-placed Everton who have two games in hand.
Leeds huffed and puffed and continued to work but were undone too easily by a back to front move that was finished ruthlessly by Gabriel Jesus with 12 minutes remaining. Fernandinho added insult to injury in stoppage time, drilling past Illan Meslier from distance.
5. Pascal Struijk - 6
Had to make some vital blocks and challenges, beaten too easily at times though, albeit by pace and skill.
6. Robin Koch - 6
Some tidy moments, solid for large parts and produced a few nice passes but couldn't stem the tide when City turned it on.
7. Kalvin Phillips - 7
Beaten to the ball for the first. Grew into the game after a quiet start and left his mark with several big challenges. Got on the ball well too.
8. Mateusz Klich - 6
Played some nice link-up play, pressed with intensity, just couldn't make it click enough to create real danger