Bristol City extended their lead at the top of Sky Bet League 1 to four points thanks to a 3-1 home win against Port Vale.Jay Emmanuel-Thomas scored his ninth of the season in the 34th minute and Joe Bryan and Matt Smith struck in the second half as the Robins notched their 11th home league win of the campaign. Port Vale's Mark Marshall scored a late consolation.
Second-placed Swindon Town lost ground on their promotion rivals as they slipped to back-to-back defeats on the road, going down 2-1 at Oldham Athletic.
Oldham, who climbed back into the Play-Off places, struck twice in the space of a minute early in the first half with goals from Mike Jones and Conor Wilkinson, while Massimo Luongo's 63rd-minute effort was not enough for Swindon.
Preston North End closed the gap on third-placed MK Dons, who lost at Bradford City on Monday night, to three points with a 2-0 win at 10-man Chesterfield.
Joe Garner struck on the half-hour mark and headed a second in the 79th minute for the away side, while the Spireites played most of the game with 10 men after Sam Hird's third-minute dismissal for his foul on Garner.
Matty Done scored on his debut as Sheffield United got their Play-Off challenge back on track with a 4-1 victory over lowly Colchester United.
Done, a deadline-day signing from Rochdale, fired home in the 37th minute after Jose Baxter had given the Blades an eighth-minute lead. Jay McEveley added a third in the 59th minute and Baxter converted his second from the penalty spot after Sammie Szmodics had pulled one back for the visitors.
Walsall boosted their chances of reaching the top-six with a 3-2 home win over Rochdale. James O'Connor, Anthony Forde and Jordy Hiwula were all on target before half-time for the Saddlers, who had to hang on after Peter Vincenti and Ashley Eastham both scored for Dale after the break.
Scunthorpe United were denied victory at Coventry City as Marcus Tudgay's stoppage-time equaliser cancelled out Gary McSheffrey's first-half strike.
Nicky Ajose scored his seventh goal in 11 appearances for Crewe Alexandra, who secured their third league win in four games with a 1-0 home win against relegation rivals Yeovil Town.
Barnsley's troubles continued as they lost 2-1 to Fleetwood Town at Oakwell. Peter Ramage gave the Reds an early lead but Fleetwood, up to ninth, hit back through Conor McLaughlin's free-kick and Liam McAlinden before the break.
Peterborough United crashed to a seventh home league defeat of the season, losing 2-1 to Gillingham, who won for the first time with Justin Edinburgh at the helm, while bottom club Leyton Orient went down to a third straight defeat, 1-0 at home to Notts County.
Second-bottom Crawley had defender Joe Walsh sent off in the 67th minute for his foul on Richie Wellens in a 5-0 home defeat to Doncaster Rovers, for whom Andy Butler, Wellens, Nathan Tyson, Harry Forrester and Curtis Main all scored.