Match ends, Millwall 1, Fulham 1.
Fulham missed the chance to move up to second place in the Championship as they were held to a draw at Millwall.
An exciting first half saw Aleksandar Mitrovic give Fulham the perfect start as he slid in Joe Bryan's excellent curling cross having got between Millwall's centre-backs.
But the hosts controversially levelled soon afterwards as Jon Dadi Bodvarsson stabbed home despite being in an offside position from what seemed to be a Tom Bradshaw flick-on.
The Lions should have been ahead 12 minutes later, but Jed Wallace struck a penalty against the top of the bar after Bryan had fouled Mahlon Romeo.
Neither side could find a winner after the break, despite Neeskens Kebano hitting the crossbar for Fulham in stoppage time.
Scott Parker's Fulham drew level on points with second-placed Leeds, but are behind them on goal difference, while Millwall stay in 11th place.
The game started frantically - Mitrovic's 21st goal of the season put him top of the Championship's goalscoring standings in his own right, but Millwall's equaliser caused consternation on the Fulham bench, and replays showed they had a case.
A corner from the right was headed back towards goal by Shaun Hutchinson with Alex Pearce appearing to be offside. The ball never reached Pearce as Bradshaw clipped the ball forward, although it appeared that referee Andy Madley and his assistant felt that Fulham defender Josh Onomah got a final touch on it when both Pearce and Bodvarsson were beyond the last defender.
Wallace almost latched into a long ball to put Millwall ahead soon after he missed his penalty, while at the other end Fulham impressed with their passing but only had a shot from Mitrovic right at the end that was straight at Bartosz Bialkowski to show for it.
Onomah twice missed the target after powerful runs through the Millwall defence after the break, while Bradshaw had a great chance to win it for the hosts with 15 minutes left after being put through on goal, but his tame left-footed shot was easily saved by Marek Rodak.
Fulham almost took all three points in the second minute of stoppage time as a corner from the left was glanced goalwards by Kebano, but the attacker's header came back off the bar.
Millwall manager Gary Rowett told BBC Radio London:
"I watched it again and it's so difficult. If the linesman flags straight away, we can all debate it and then he's probably going to give offside because of that initial reaction.
"But when you watch it back, you just can't tell who's touched it and if you can't tell who's touched it, you can't be sure it's offside.
"It's such a difficult one and I don't know the answer. I don't know, genuinely, but I was pleased with our reaction."
Fulham boss Scott Parker told BBC Radio London:
"We found it quite difficult in the first half; we didn't really put our mark on the game.
"I think their goal is clearly offside and after that, it just felt like that moment rattled us a little bit.
"It is what it is. I wouldn't have thought you would need VAR for that decision tonight.
"I've just seen it back, I just honestly don't understand. We can't dwell on that.
"We hit the bar, we huffed and puffed and it didn't go our way at times."
Line-ups
Millwall
Formation 3-4-3
- 33Bialkowski
- 4Hutchinson
- 15PearceSubstituted forSmithat 86'minutes
- 5Cooper
- 12Romeo
- 16Molumby
- 19WoodsBooked at 25minsSubstituted forSkalakat 86'minutes
- 3M Wallace
- 7J Wallace
- 9BradshawSubstituted forLeonardat 77'minutes
- 23Bödvarsson
Substitutes
- 10Smith
- 11Ferguson
- 14Steele
- 18Leonard
- 21Mahoney
- 22O'Brien
- 26Skalak
Fulham
Formation 4-2-3-1
- 12Rodák
- 4Odoi
- 3Hector
- 13Ream
- 23Bryan
- 10CairneyBooked at 61mins
- 18ArterBooked at 81minsSubstituted forKebanoat 88'minutes
- 47KamaraSubstituted forCavaleiroat 70'minutes
- 25Onomah
- 14De Cordova-Reid
- 9Mitrovic
Substitutes
- 1Bettinelli
- 6McDonald
- 7Kebano
- 8Johansen
- 19Cavaleiro
- 22Christie
- 43S Sessegnon
- Referee:
- Andy Madley
- Attendance:
- 12,870
Match Stats
- Possession
- Home34%
- Away66%
- Shots
- Home9
- Away9
- Shots on Target
- Home2
- Away2
- Corners
- Home4
- Away3
- Fouls
- Home9
- Away12
Live Text
Post update
Full Time
Second Half ends, Millwall 1, Fulham 1.
Post update
Attempt missed. Joe Bryan (Fulham) left footed shot from outside the box is high and wide to the left. Assisted by Josh Onomah.
Post update
Neeskens Kebano (Fulham) hits the bar with a header from the left side of the six yard box. Assisted by Ivan Cavaleiro with a cross following a corner.
Post update
Corner, Fulham. Conceded by Jed Wallace.
Substitution
Substitution, Fulham. Neeskens Kebano replaces Harry Arter.
Post update
Attempt missed. Ryan Leonard (Millwall) with an attempt from the left side of the six yard box is just a bit too high following a corner.
Substitution
Substitution, Millwall. Jiri Skalak replaces Ryan Woods.
Substitution
Substitution, Millwall. Matt Smith replaces Alex Pearce.
Post update
Corner, Millwall. Conceded by Michael Hector.
Post update
Harry Arter (Fulham) wins a free kick in the defensive half.
Post update
Foul by Ryan Leonard (Millwall).
Post update
Attempt blocked. Ryan Woods (Millwall) right footed shot from outside the box is blocked.
Booking
Harry Arter (Fulham) is shown the yellow card for a bad foul.
Post update
Foul by Harry Arter (Fulham).
Post update
Jón Dadi Bödvarsson (Millwall) wins a free kick in the attacking half.
Post update
Ivan Cavaleiro (Fulham) wins a free kick in the defensive half.
Post update
Foul by Jed Wallace (Millwall).
Substitution
Substitution, Millwall. Ryan Leonard replaces Tom Bradshaw.
Post update
Attempt saved. Tom Bradshaw (Millwall) left footed shot from the left side of the box is saved in the centre of the goal. Assisted by Jón Dadi Bödvarsson with a through ball.