League One Wrap: Bristol City move clear at top
The win for Steve Cotterill's side, along with Swindon Town's 2-1 defeat to Oldham Athletic, sees them open up a cushion at the top of the table.
Goals from Jay Emmanuel-Thomas, Joe Bryan and Matt Smith gave the league leaders all three points against Vale, who grabbed a late consolation through Mark Marshall.
And to add to City's celebrations, nearest rivals Swindon suffered their second successive away defeat in the league at Boundary Park.
Two goals in the opening 11 minutes gave Oldham a flying start to the game, and although Massimo Luongo halved the deficit, Swindon were unable to rescue a point, and the hosts climbed into fifth.
Preston North End moved within four points of Swindon thanks to a 2-0 win over play-off -chasing Chesterfield, a result that sees Paul Cook's side - who were reduced to 10 men in just the third minute - slip out of the top six.
A Jose Baxter double inspired Sheffield United to a 4-1 victory over struggling Colchester United.
At the other end of the table, it was a bad evening for the sides in the drop zone as they all suffered defeats.
Leyton Orient continue to prop the division up after Notts County's Hungarian striker Balint Bajner scored his first goal for the club - in front of a travelling group of fans from his homeland - to give County a 1-0 win.
Fellow strugglers Yeovil Town were beaten by the same scoreline against Crewe Alexandra, while 10-man Crawley Town were thumped 5-0 by a rampant Doncaster Rovers.
Coventry City sit four points clear of trouble after they rescued a 1-1 draw against Scunthorpe United thanks to Marcus Tudgay's stoppage-time strike.
Meanwhile, there was a 2-1 win for Gillingham over Peterborough United, Walsall beat Rochdale 3-2 and Fleetwood Town came from behind at Oakwell to beat Barnsley 2-1.