England made a solid start to their reply after South Africa stretched their first innings to 419 on the second day of the second Test at Headingley on Friday.
England were 48 for no wicket when bad light ended play with 22 overs still due to be bowled.
"It's pretty even," said Stuart Broad, who took three for 96 to be England's most successful bowler.
"Being none down tonight was vital. We have one job and that is to bat as big and as long as we can. We need one of those 600 knocks and to put South Africa under pressure on the last day."
England captain Andrew Strauss and his opening partner Alastair Cook batted confidently, aided by some wayward bowling by the South Africans.
South Africa's innings lasted until shortly before the tea break. Alviro Petersen made a career best 182 as South Africa ground out an imposing total, casting doubt on England's decision to pick an all-seam attack and send them in.
Broad admitted that the prospect of rain ahead of the match had influenced England's decision.
"The forecast was so bad for the weekend that our best chance was to bowl South Africa out on day one," he said.
Petersen injured his right hamstring towards the end of his innings and did not field when England batted. Assistant coach Russell Domingo said he had gone for a scan but a preliminary assessment was that he might be out of action for up to ten days.
After Petersen's marathon innings ended in mid-afternoon, JP Duminy hit an unbeaten 48 as the last three wickets added 66 runs.
There was irony for England when part-time off-spinner Kevin Pietersen took his side's first wicket of the day after Petersen and Jacques Rudolph had batted most of the morning in a stubborn sixth wicket stand of 59.
England left out front-line spinner Graeme Swann, opting for four specialist seam bowlers. But the quick men could not make a breakthrough despite bowling accurately in overcast conditions.
Finally Strauss tossed the ball to Pietersen, whose second ball spun sharply past the bat as the left-handed Rudolph stretched forward defensively.
Wicketkeeper Matt Prior whipped off the bails and television umpire Asad Rauf ruled that the batsman had not got part of his foot behind the line in time.
James Anderson and Stuart Broad sent down six successive maidens at the start of the day.
In the fifth over Petersen was given out leg before wicket to Anderson by umpire Steve Davis without adding to his overnight score of 124 but, for the second time in his innings, he called for a review and was reprieved when replays showed the ball would have missed his leg stump.
Petersen went past his previous Test best of 156 against New Zealand in Wellington in March before he was caught behind off Broad after batting for 530 minutes. He faced 365 balls and hit 23 fours.
As they had in their innings win in the first Test at the Oval, South Africa gave the new ball to Morne Morkel in an attempt to extend Strauss' struggles against the tall fast bowler. Morkel produced one rearing delivery that hit Strauss on the glove but was mainly off target.
Vernon Philander also seldom made the batsmen play and captain Graeme Smith brought Dale Steyn into the attack after four overs and Philander switched ends but without a significant increase in menace.
Strauss hit sweetly timed off-drives for four off Philander and Steyn in successive overs. The score moved quickly to 47 off 13 overs before Jacques Kallis and an improved Morkel bowled a better line and length, conceding only one run in five overs before play was called off.
"We bowled really well in the last five or six overs," said Domingo, who said the earlier waywardness was something that could be overcome.
"We probably didn't make guys play enough but we are fully aware that we need to improve those specific skills tomorrow."