Portsmouth battered Leicester City 6-1 on Friday night, and the Foxes dropped to 24th when Preston North End secured an impressive win at Coventry City.
Goals from Billy Jones and Iain Hume secured the win at the Ricoh Arena, with Aron Gunnarsson scoring for Coventry.
Derby County had not won in their last seven matches, but thrashed Crystal Palace 5-0 at Pride Park.
Bristol City ground out a goalless draw at Burnley, but were grateful to see Graham Alexander miss a penalty kick.
Queens Park Rangers maintained their six-point lead at the top of the table thanks to a 3-0 success over Doncaster Rovers.
They had to wait a while to break down their Yorkshire opponents at Loftus Road, but goals from Kaspars Gorkss either side of one from Adel Taarabt.
Andy Keogh, the former Scunthorpe striker, scored his first goal for Cardiff City to help them get back to winning ways.
His goal in stoppage time secured a 2-1 home win over Millwall. Scott Barron had put Cardiff ahead before Jay Bothroyd's levellers - the Lions' cause was hindered by a red card shown to the former Iron midfielder Liam Trotter.
Watford's incredible form continued with a 3-1 success over Middlesbrough at Vicarage Road.
They scored in the first minute when Boro's David Wheater passed the ball back to his keeper without looking, allowing Danny Graham in to score against the club where he began his career. Jordon Mutch scored a second and Graham got a third to send the Hornets third.
A goal from Bradley Johnson gave Leeds a 1-0 win over Sheffield United in a Yorkshire derby at Elland Road.
Nottingham Forest put their indifferent form behind them with a 3-1 home win over Swansea City. Hull City secured a 2-0 win at Norwich and Reading thrashed Barnsley 3-0.