Alastair Cook's unbeaten fifty strengthened England's grip on the first Test at Lord's after South Africa had to toil in the field without Vernon Philander on Saturday.
England were 119 for one in their second innings at stumps on the third day, a lead of 216 runs in this opening match of a four-Test series.
Former captain Cook was 59 not out, after more than three hours of typically painstaking effort, with fellow left-hander Gary Ballance unbeaten on 22.
Experienced paceman Philander did not bowl a single one of the 51 overs the Proteas sent down Saturday, after going for an X-ray on a hand injury suffered when he was hit by James Anderson while making 52 in South Africa's first innings 361 earlier in the day.
It was a worrying absence for the Proteas given they are already without Kagiso Rabada, another member of their pace attack, for next week's second Test at Trent Bridge after he was banned for verbally abusing England all-rounder Ben Stokes on Thursday's first day at Lord's.
South Africa, with Dean Elgar leading the side for the first time in the absence of Faf du Plessis on paternity leave, wasted their two reviews in the first 80 overs on Cook.
Both times they challenged what seemed, even with the naked eye, sound not out decisions by umpires Paul Reiffel and S Ravi in response to lbw appeals.
But Cook was still on his tea score of 31 when partly unsighted wicket-keeper Quinton de Kock missed a stumping chance off left-arm spinner Keshav Maharaj.
Keaton Jennings, born in South Africa but England qualified through his mother and residence, helped Cook put on 80 for the first wicket.
But he fell for 33 when, trying to cut a Morne Morkel ball that was too close to him, he was caught behind by de Kock -- who played in the same XI as Jennings when they were both pupils at Johannesburg's King Edward VII school.
Jennings's exit brought in Ballance, under pressure in what was now his third chance at Test cricket and out for just 20 in the first innings.
Cook's three on another sun-drenched day at Lord's saw him to a 127-ball fifty including eight fours of which a cover-drive off Maharaj was the pick.
- Dashing De Kock -
South Africa resumed on 214 for five -- still 244 runs behind England's first innings 458 which featured Joe Root's 190 in his first Test as England captain as well as fifties from Moeen Ali (87), Stuart Broad (57 not out) and Stokes (56).
Temba Bavuma was 48 not out and nightwatchman Rabada unbeaten on nine.
Both Rabada (27) and Bavuma (59) fell to spinners Liam Dawson and Ali respectively.
But after Root took the new ball, de Kock twice struck fast-medium bowler Broad for three successive fours -- the best a whipped drive through mid-on from a ball pitching outside off stump.
It was a typically dashing display by the left-hander, who completed the second-fastest Test fifty at Lord's in a mere 36 balls, including 10 boundaries.
But his next ball proved his last, de Kock slicing James Anderson to square cover where Stokes took an excellent low catch.
Philander made a fine fifty of his own before he was last man out slogging at off-spinner Ali, who finished with fine figures of four for 59 in 20 overs after he completed both halves of the Test 'double' of 2,000 runs and 100 wickets on Thursday.