Nottingham - England were bowled out for 205 in reply to South Africa's first innings 335, a deficit of 130 runs, on the second day of the second Test at Trent Bridge on Saturday.
LIVE: England v Proteas, 2nd Test Day 2
Left-arm spinner Keshav Maharaj took three wickets for 21 runs in 10 overs and recalled all-rounder Chris Morris three for 38 in 8.5 overs.
England captain Joe Root top-scored with 78 in an innings where Yorkshire team-mate Jonny Bairstow (45) was the only other batsman to make more than 30.
South Africa's performance was all the more impressive as they were without Kagiso Rabada.
The fast bowler was suspended from this match after swearing at Ben Stokes during England's 211-run win in the first of a four-match series at Lord's last week.