The South African fast bowlers Morne Morkel and Dale Steyn took three wickets each to ensure the third cricket test against England remains evenly balanced after the second day's play at Newlands.
England were 241 for 7 at the close, 50 behind South Africa's first innings total of 291.
Thanks mainly to Morkel, who took 3-57, and Steyn (3-64), England were unable to take control despite ripping through the South African lower batting order early in the day.
England's remaining batsmen, led by wicketkeeper Matt Prior, on 52 not out, will be in a similar situation to South Africa in their first innings when they resume on the third day.
The South African bowlers will be armed with an almost-new ball and the pitch has a history of being tricky to bat on early in the day.