Steven Finn snared the prized wicket of Hashim Amla as England restricted South Africa to 267-7 on day one of the third Test, at Wanderers Stadium.
Seamer Finn, now the leading wicket-taker in the series with 10 after taking 2-50, removed the former Proteas skipper for 40 with a superb delivery as the unchanged tourists chipped away in their bid for a victory that would guarantee them the Basil D'Oliveira Trophy with one Test to play.
A stubborn, unbroken stand of 42 between Chris Morris (26 not out) and Kagiso Rabada (20no) redressed the balance a little but after winning the toss, new skipper AB de Villiers must have hoped for a better return.
De Villiers endured a morning of confusion when wicketkeeper Quinton de Kock was ruled out of the Test late on with a knee injury - his replacement, Dane Vilas, flying in from Port Elizabeth but only arriving mid-session.
Opposing skipper Alastair Cook, who also would have batted, rotated his attack to good effect as the first five wickets to fall did so in the over after a bowling change, wicketkeeper Jonny Bairstow claiming the opening four catches and involved in a run out to boot.
Ben Stokes, man-of-the-match in the second Test for his brilliant 258, grabbed the initial breakthrough with his third ball - Stiaan van Zyl (21) top-edging an attempted pull after putting on 44 for the first wicket with Dean Elgar (46).
The home side battled hard to reach lunch on 73-1 and suffered no further losses in the first hour after the interval as Elgar and Amla improved their stand to 73.
But England then bagged two wickets for just 10 runs - Elgar snicking the second ball after drinks from Moeen Ali behind, before Amla did well to touch a cracking delivery from Finn that straightened just enough to take the edge.
De Villiers steadied the ship after striking his second and third balls for four - launching Moeen for six over midwicket in the first over after tea.
But after cruising to 36, his attacking intent proved his undoing, the skipper gloving behind while attempting to pull Stokes.
Just as in Cape Town, where he scored his maiden Test century, Temba Bavuma (23) was more than willing to take on the short ball and drove impressively.
Faf du Plessis (16 off 57 balls) dug in at the other end until he picked out Alex Hales at deep square, flicking a rising ball from Finn straight to the fielder.
If that dismissal was soft, Bavuma's was unnecessary but did showcase Bairstow's athleticism.
Vilas called for a tight single to mid-on where substitute fielder Chris Woakes gathered and threw to the wicketkeeper's end where Bairstow gathered on the dive and broke the wicket with Bavuma two yards short.
Vilas, dropped after South Africa's disastrous tour of India, rather gave his own wicket away too - top-edging a pull to hand Stuart Broad, at times seemingly struggling with illness, his first victim of the day.
But England's hopes of wrapping up the innings with the new ball were frustrated by Rabada and Morris, who edged just short of Stokes in the gully when he had nine.
Watch highlights of day one of the third Test at 6.30pm on Sky Sports 2, then don't miss The Verdict at 7.30pm on the same channel. Our live blog of day two begins at 7.45am, with live coverage kicking in at 8am on Sky Sports 2.