Drivers were stuck in queues of up to two hours this morning as emergency resurfacing took place.
Highways engineers put down crystals to soak up the diesel but were too late to prevent damage to the road surface, which needed replacing.
The eastbound carriageway was opened at 9.30pm and the westbound opened between Ringwood Road and Cobham Road this morning.
Resurfacing work and repairs around a collapsed manhole at Canford Bottom are complete.
The road reopened around 12.30pm and was expected to reopen at 11.30am but works were delayed because the recovery truck got stuck in traffic.
Traffic was diverted via the Ferndown Industrial Estate. Traffic was then diverted onto the B3073 and via the A348 and A341 to re-join the A31 at Merley.