Caleb Taylor scored a stoppage-time winner as Millwall moved back into the Championship play-off places thanks to a 2-1 victory over Swansea City.

The Lions led at the break thanks to Mihailo Ivanovic’s turn and finish but might have been further ahead having dominated the first period.

Swansea, who had goalkeeper Lawrence Vigouroux to thank for keeping them in the contest, levelled early in the second half when captain Ben Cabango prodded home from close range.

The Welsh side seemed set to celebrate a hard-earned point until centre-back Taylor climbed above Marko Stamenic at the far post to head home from Alfie Doughty’s corner.

This was just a second win in seven matches for Millwall, who climb to fifth – and within three points of the automatic promotion places – thanks to Taylor’s dramatic late intervention.

Swansea slip to 17th after a fifth defeat in six on the road, though Vitor Matos’ team remain eight points clear of the relegation zone.

Millwall had been knocking at the door before the goal came, with Vigouroux making a pair of double saves to keep the home side at bay.

First Swansea’s Chile international repelled Ivanovic’s header and Macaulay Langstaff’s follow-up, then repeated the feat as the two Millwall forwards threatened once more.

Vigouroux produced another fine save to deny Femi Azeez before Ivanovic delivered the goal Millwall deserved, drilling home on the turn after one of numerous balls into the penalty area was not dealt with.

Swansea offered a response of sorts late in the first period, with Ronald twice denied by Millwall keeper Max Crocombe, before the pattern of the game shifted after the break.