The Bluebirds dominated long spells but could not find a way past Maik Taylor in the Millwall goal, with Stephen McPhail, Kenny Miller and Joe Mason all denied by the Lions stopper in the first half.
After the break the home side continued to dictate proceedings. Mason's header was tipped over the crossbar by Taylor and Miller went close once again but Cardiff were unable to break down their guests.
Andy Keogh thought he had won he produced a smash-and-grab win when he found the back of the net after 76 minutes only to see the strike ruled out for offside.
And at the other end Aron Gunnarsson was similarly frustrated when he beat Taylor only to see referee Tony Bates had awarded Millwall a free-kick for a foul in the build-up.
Cardiff manager Malky Mackay made one change to the side that drew with Birmingham, as Don Cowie sat out with a slight calf strain and Miller returned up front.
Shane Lowry replaced Darren Ward in defence for Millwall, while Liam Feeney came into the side instead of Darius Henderson.
Millwall enjoyed early sights of goal in the first half, with James Henry ballooning a 20-yard free-kick over the bar and firing wide from the edge of the area before Cardiff got into their stride.
McPhail tested Taylor in the Lions goal from range before Mason saw his attempt blocked on the line as the home side started to move into the ascendancy.
Gunnarsson could only direct his header over the top, while Feeney blocked Liam Lawrence's effort as the Bluebirds huffed and puffed.
The visitors were reduced to speculative shots from distance, with Tony Craig failing to trouble David Marshall from 30 yards, but their backline stood firm to go into the break level.
The hosts started the second period strongly, with Miller shooting at Taylor before the veteran stopper pushed Mason's header over the bar.
Gunnarsson nodded wide and Miller was again off target as Cardiff struggled to find a killer blow.
The Bluebirds were camping themselves in the Lions' half, and Kevin McNaughton saw his goalbound drive well blocked by Josh Wright before Miller was denied by Jack Smith.
In a rare foray into opposing territory, Henry blasted wide from 12 yards for Millwall, who appeared to be happy to hang on for a point.
But with time ticking away, the visitors pushed hard to steal a late winner.
Keogh thought he had got just that for the Lions with 14 minutes remaining when he slotted home only to be flagged offside, and the striker then brought a decent punched save from Marshall when he pulled the trigger from six yards out.
At the other end, Gunnarsson saw his effort chalked off for a foul in the build-up, and the match tapered off to a limp conclusion.
Source: PA
Source: PA