Match ends, Cardiff City 2, Queens Park Rangers 1.
Cardiff City beat Queens Park Rangers in a breathless encounter to stay top of the Championship table.
Matt Smith nodded QPR in front before their former winger Junior Hoilett equalised by blocking goalkeeper Alex Smithies' clearance.
Sol Bamba's header gave Cardiff the lead, fuelling a fiery atmosphere at Cardiff City Stadium.
The hosts had chances to score a third but held out comfortably for a fifth win from five league games.
Their victory, coupled with Ipswich's defeat at home to Fulham, means the Bluebirds are now three points clear at the Championship's summit.
There was an expectant crowd at Cardiff City Stadium, but the sense of optimism stemming from the hosts' perfect start to the season was punctured by Smith's opener, as he nodded in from close range after Cardiff goalkeeper Neil Etheridge failed to clear Luke Freeman's cross.
Etheridge will have been disappointed with his hesitant effort, though it paled into insignificance compared to his opposite number Smithies' blunder.
Under pressure from a poor back-pass by his captain Nedum Onuoha, the QPR goalkeeper's clearance ricocheted off Hoilett and straight into the net.
Those two goals were typical of a compelling encounter played at breakneck speed, as entertaining because of its errors and robust challenges as it was because of its goals and chances at both ends.
It was fitting too that this battle should include a headed goal from a corner for Bamba, whose aerial duels with his adversary Smith were so brutal that they could have registered on the Richter scale.
Cardiff maintained the frenetic tempo in the second half and, buoyed by a vociferous home crowd, they twice went close to a third goal as Hoilett had one effort disallowed for a push before Nathaniel Mendez-Laing struck the crossbar.
Kenneth Zohore was then denied by a brilliant close-range save from Smithies as Cardiff continued to press but, with QPR offering little in attack, it was an ultimately simple fifth consecutive league win for Neil Warnock's in-form side.
Cardiff City manager Neil Warnock told BBC Radio Wales:
"Obviously I'm pleased. We made hard work of it at times but I was delighted with the way we played.
"We showed a lot of character, played some good stuff on the front foot, created some good chances. I thought [QPR goalkeeper Alex] Smithies was brilliant.
"It's a happy place and I'm really glad we've got two weeks off now [for the international break] without a press conference."
Queens Park Rangers manager Ian Holloway said:
"We were doing fine when we got in front, we looked pretty comfortable and then it changed when we conceded the first goal, the manner of it, the timing of it. We could have dealt with it better.
"Unfortunately they forced us into a mistake and it knocked the stuffing out of us, got the crowd up. They then go and score from a set-play.
"On the balance of play, that's as good a Cardiff team as I've ever seen. It's going for them at the minute - they're making it go for them. They looked a real solid unit.
"The Bluebirds will be buzzing tonight but we weren't that far off them."
Line-ups
Cardiff
Formation 4-2-3-1
- 25Etheridge
- 2Peltier
- 4Morrison
- 14Bamba
- 3Bennett
- 17Gunnarsson
- 8Ralls
- 19Mendez-Laing
- 20DamourSubstituted forWardat 82'minutes
- 33HoilettSubstituted forEcuele Mangaat 90+2'minutes
- 10Zohore
Substitutes
- 5Ecuele Manga
- 6Richards
- 7Tomlin
- 9Ward
- 15Halford
- 28Murphy
- 30Bogle
QPR
Formation 4-3-3
- 1Smithies
- 2FurlongBooked at 38mins
- 5Onuoha
- 15CaulkerSubstituted forWszolekat 72'minutes
- 3Bidwell
- 21Luongo
- 11Scowen
- 7Freeman
- 12MackieSubstituted forSyllaat 61'minutes
- 17Smith
- 9WashingtonSubstituted forN'Gbakotoat 70'minutes
Substitutes
- 13Ingram
- 18Robinson
- 20Baptiste
- 22Wszolek
- 23N'Gbakoto
- 35Lua Lua
- 40Sylla
- Referee:
- Simon Hooper
- Attendance:
- 18,520
Match Stats
- Possession
- Home51%
- Away49%
- Shots
- Home17
- Away8
- Shots on Target
- Home8
- Away1
- Corners
- Home8
- Away2
- Fouls
- Home12
- Away16
Live Text
Post update
Full Time
Second Half ends, Cardiff City 2, Queens Park Rangers 1.
Post update
Corner, Cardiff City. Conceded by Alex Smithies.
Post update
Attempt saved. Nathaniel Mendez-Laing (Cardiff City) right footed shot from the left side of the box is saved in the bottom left corner.
Post update
Corner, Queens Park Rangers. Conceded by Neil Etheridge.
Post update
Attempt missed. Matt Smith (Queens Park Rangers) left footed shot from the centre of the box is close, but misses to the left. Assisted by Yeni N'Gbakoto.
Post update
Attempt missed. Luke Freeman (Queens Park Rangers) left footed shot from the centre of the box is close, but misses to the left.
Substitution
Substitution, Cardiff City. Bruno Ecuele Manga replaces David Junior Hoilett.
Post update
Offside, Cardiff City. Joe Ralls tries a through ball, but Nathaniel Mendez-Laing is caught offside.
Post update
Attempt missed. Josh Scowen (Queens Park Rangers) right footed shot from outside the box is high and wide to the right. Assisted by Jake Bidwell with a headed pass.
Post update
Joe Bennett (Cardiff City) wins a free kick in the defensive half.
Post update
Foul by Matt Smith (Queens Park Rangers).
Post update
Attempt missed. David Junior Hoilett (Cardiff City) left footed shot from the left side of the box misses to the left following a set piece situation.
Post update
Attempt blocked. Sean Morrison (Cardiff City) header from the centre of the box is blocked. Assisted by Joe Ralls with a cross.
Post update
Kenneth Zohore (Cardiff City) wins a free kick on the left wing.
Post update
Foul by Massimo Luongo (Queens Park Rangers).
Post update
Kenneth Zohore (Cardiff City) wins a free kick on the left wing.
Post update
Foul by Darnell Furlong (Queens Park Rangers).
Post update
David Junior Hoilett (Cardiff City) wins a free kick in the defensive half.
Post update
Foul by Jake Bidwell (Queens Park Rangers).