Reading's win over Leeds yesterday nudged Brian McDermott's side a point ahead of the Saints at the summit but their rivals responded with a Billy Sharp brace in the south-coast showdown that ended 2-2 at St Mary's.

Sharp must have thought his late second had secured all three points, after Chris Maguire spectacularly cancelled out his opener, but Pompey responded again with David Norris firing home from outside the box deep into injury time.

Cardiff climbed back into the play-off places with a 2-0 win over top-six rivals Middlesbrough.

The Welsh side arrived at the Riverside in eighth position, two points behind their opponents and sixth-placed Brighton, but usurped both come the end of the day after first-half goals from Ben Turner and substitute Joe Mason.

Centre-half Turner headed the opener from a Liam Lawrence corner after 11 minutes before Mason, on for the injured Kenny Miller in the sixth minute, tapped in from close range from another Lawrence assist with 19 minutes on the clock.

That was the end of the scoring, though Adam Hammill and Lukas Jutkiewicz hit the woodwork for Boro in the second half.

Birmingham strengthened their grip on a play-off spot with a 3-1 win over Crystal Palace, whose record at St Andrew's was extended to eight defeats in their last nine visits.

Chris Burke and Keith Fahey struck within two minutes of each other midway through the half before David Murphy got on the scoresheet in the 32nd minute. All three goals were excellent finishes from outside the box.

Palace pulled a goal back on the stroke of half-time through Owen Garvan, and it was another outstanding goal from long range.

Leicester kept up their push for a top-six place with a 4-0 win over bottom side Doncaster.

Danny Drinkwater gave them the half-time lead with a 33rd-minute effort from the edge of the area and Lee Peltier, Ben Marshall and Paul Gallagher struck in the second half to secure a comfortable margin of victory for the Foxes, who trail the play-off places by five points.

Rovers ended the day seven points adrift of 21st-placed Coventry, who were prevented from moving further clear by Emile Sinclair's brace for Peterborough.

Cody McDonald's header and Gary McSheffrey's penalty saw Andy Thorn's team come from behind after Sinclair's superb 25-yard opener early on, but the former Macclesfield striker earned Posh a point in the 76th minute.

Hull's losing run continued as Harry Kane's 25th-minute header and Andy Keogh's penalty gave Millwall a 2-0 win at the New Den, while Derby and Ipswich drew 0-0 at Pride Park.

Chris Wood marked his return to the Bristol City team with the goal that lifted the Robins out of the relegation zone and dragged Nottingham Forest back into trouble.

Wood, on loan from West Brom, kept his cool to score from the penalty spot early in the second half after Forest goalkeeper Lee Camp had a rush of blood and upended birthday boy Jon Stead eight yards out.