By Richard Cawley
Cardiff City boss Neil Warnock was left raging at the fourth official as he saw his side have a second-half goal controversially ruled out.
Junior Hoilett had given the Welsh outfit a dream start as he seized on a defensive mistake to fire them into an early lead.
But Lee Gregory levelled things up for Millwall with an excellently-worked goal before the break.
The South Londoners had a significant period on top with Cardiff dominant in the first 15 minutes and also the same length of time as the contest drew to a close.
Millwall were wobbly in the opening exchanges and Mahlon Romeo was at fault for the opening goal after just three minutes.
The right-back showed indecision on the ball and was pick-pocketed by Hoilett, who advanced to the edge of the box before emphatically smashing past Jordan Archer.
The Lions struggled to clear their lines as the visitors won a spate of corners. Archer needed to fist one wicked Hoilett delivery out from nearly under his crossbar.
But Millwall began to gain a foothold after the quarter-hour mark. Steve Morison was unlucky as he chested down Ben Marshall’s cross before smashing his volley against the top of the crossbar on 23 minutes.
Morison produced a much tamer effort from an easier position before the hosts deservedly moved level.
It was the captain’s flick that released Jed Wallace down the right and his low cross was perfect for Gregory to power onto and rifle beyond Neil Etheridge on 40 minutes. Moments earlier the centre-forward had worked space for himself and drove a low effort just past the left post.
It was the striker’s seventh goal of the season and his third in the last six matches.
Cardiff captain Sean Morrison could only get the most desperate of flicks on Romeo’s cutback as the Lions kept making inroads into the City penalty area, with the loose ball luckily retrieved first by the away side.
Millwall started the second half where they finished the first – firmly on top. Etheridge had to save at his near post from Marshall while Gregory could only arch and head a fine Wallace cross off target.
The movement of Gregory and Wallace was proving a major problem for a backline that boasted size, not mobility. Etheridge just about claimed Wallace’s shot at the second attempt on 66 minutes as dark blue shirts closed in.
Cardiff came back into the contest as the match wore on and Cardiff boss Warnock was left incensed as a number of big calls went against his side. The biggest was Sol Bamba hooking home just as referee Keith Stroud awarded them a free-kick on the edge of the box after Joe Bennett was clipped in the head by Morison’s arm.
And the resultant set-piece ballooned up off the wall and saw Archer steam off his line, clearing the ball but also taking out Callum Paterson.
Paterson had a header cleared off the line by George Saville and also got a lucky break when the ball came off Shaun Hutchinson’s heel to put him through, but under pressure from James Meredith he failed to even hit the target.
Tim Cahill came on just before four minutes of stoppage time but did not get a chance to influence the game in the attacking third.