England lost both their overnight batsmen on a tense fourth morning on Sunday as they attempt to save the first Test against South Africa SuperSport Park.
England, needing 376 to win, were 171 for three at lunch, adding only 50 runs in 25 overs during the morning against a disciplined South African bowling attack.
Rory Burns took his overnight score of 77 to 84 before mistiming a pull against Anrich Nortje to be caught at mid-on, while Joe Denly was leg before wicket to Dwaine Pretorius for 31.
England captain Joe Root and Ben Stokes were together at lunch, probably holding the key to England's chances with the second new ball 14 overs away.
Burns and Denly saw off the threat of Vernon Philander and Kagiso Rabada at the start of play but found scoring difficult.
Philander conceded only one run in five overs while Rabada gave up 23 in six overs, which included two hooked sixes by Denly.
Burns, who faced most of Philander's bowling, adding only seven runs off 37 balls.
The change to Nortje brought an immediate result for South Africa as Burns attempted to pull the fast bowler's second delivery and sent the ball looping to Rabada at mid-on.
Denly was looking solid until he played around his pads and was leg before to Pretorius.