Graeme Smith and Hashim Amla laid the foundations for a significant score as South Africa recovered from the early loss of Alviro Petersen to reach one for 86 at stumps on day two of the first Test against England at the Oval on Friday.
James Anderson produced a superb inswinger in the third over striking Petersen on the back pad to win a leg before wicket decision from umpire Steve Davis.
Petersen’s dismissal continued the trend of a day which saw bowlers dominate for long periods under an overcast sky in south London.
However, South African captain Smith and Amla saw their team through to the close to keep the tourists in contention after England’s first innings of 385 all out.
Amla had an escape 10 minutes before the end of an extended day’s play when England captain Andrew Strauss dropped him at first slip off Ravi Bopara.
But Amla finished on 47 not out, while Smith, playing in his 100th Test, was unbeaten on 37.
There were signs, though, that the tourists will need to build a big first innings score because of uneven bounce from a dry pitch, while England off-spinner Graeme Swann was able to get some turn.
“There are good signs for Swanny,” said England wicketkeeper Matt Prior.
“It is an attritional wicket and it is hard to score quickly.
“If we get early wickets in the morning we are back in the ascendancy. We are still in a very good position.”
England lost their last seven wickets for 118 runs despite an aggressive innings of 60 off 90 balls by wicketkeeper Matt Prior.
Fast bowler Dale Steyn struck in the third and fifth overs of the day to dismiss Alastair Cook and Ravi Bopara as the match underwent a transformation from the first day when the England batsmen were seldom troubled in reaching three for 267.
In the first eight overs, England added only six runs for the loss of two wickets as Steyn and Vernon Philander bowled an immaculate line, gaining some swing with the second new ball.
South Africa, bidding to replace England as the world’s top ranked Test team, made a crucial breakthrough when Steyn dismissed Cook.
Cook added only one run to his overnight 114 before he was bowled off an inside edge by a ball from Steyn which swung in to him.