Brentford missed a golden chance to close the gap on second-placed Leeds as the Bees could only manage a draw at lowly Huddersfield.
Leeds suffered a surprise defeat at QPR in the lunchtime kick-off, meaning Brentford would be just three points off the automatic promotion spots with a win.
But Thomas Frank’s men could only manage a goalless draw at the John Smith’s Stadium.
On-loan Liverpool man Rhian Brewster got his first goal for Swansea as he helped them to a 2-1 win over Wigan at the Liberty Stadium. Andre Ayew scored the Swans’ other goal.
The result puts the Welsh side into fifth and firmly in with a shout of promotion.
Elsewhere, there was a shock result at Hillsborough as play-off hopefuls Sheffield Wednesday were put to the sword by Blackburn.
A brace from former Tottenham man Lewis Holtby, strikes from Darragh Lenihan and Sam Gallagher and an own goal by Cameron Dawson sealed a 5-0 triumph for Rovers.
Meanwhile, Millwall’s excellent form under Gary Rowett sees them go on the verge of the play-offs, their latest triumph a 2-0 win at home to Reading.
The game was overshadowed by an anti-racism announcement being made twice following an incident in the crowd.
Below you can see all the results from Saturday’s action in the second tier.
QPR 1-0 Leeds (12:30pm KO)
Birmingham 1-1 Cardiff
Bristol City 1-0 Barnsley
Derby 1-0 Hull
Huddersfield 0-0 Brentford
Millwall 2-0 Reading
Preston 2-1 Charlton
Sheffield Wednesday 0-5 Blackburn
Swansea 2-1 Wigan