Moeen Ali took four, while Jack Leach and Adil Rashid chipped in with two apiece as England bowled out the hosts for just 203 in response to their 342 – a substantial first-innings lead of 139. Openers Rory Burns and Keaton Jennings then batted out 12 overs to take extend England’s lead to 177.
England had begun the day at 321/8 with Foakes on 87 and Jack Leach on 14. Leach was the first to fall for the addition of just one run to his overnight score, becoming Dilruwan Perera’s fifth victim of the innings.
Foakes, however, took calculated risks to get past his century. He perished for 107 when he mistimed a slog to extra cover.
The Sri Lankan batting effort started out on the wrong foot with James Anderson getting one to move sharply away into the channel to find Dimuth Karunaratne’s edge to the wicket-keeper for four, giving Foakes a first catch just two balls into his Test ‘keeping career. Opener Kaushal Silva was then dismissed LBW by Sam Curran for just one to leave Sri Lanka 10/2.
While England’s quicks gave them the desired start, it was the spinners who would dominate through the rest of the innings, Moeen Ali in particular.
Kusal Mendis was the first to fall to spin, for 19, when left-arm spinner Leach got one to turn just enough to take his outside edge. Dhananjaya de Silva was the first of Moeen’s four victims, losing his stumps for 14 after failing to connect a sweep shot.
Angelo Mathews and captain Dinesh Chandimal then came together with the score at 40/4, and it looked the experienced pair would yank Sri Lanka out of an unenviable position. But just when things started looking brighter, Adil Rashid got one to turn sharply, and had the captain stumped for 33, ending a 75-run partnership.
Mathews went past his half-century but couldn’t carry on for too much longer, Moeen having him caught for 52 at short leg. He was dismissed first ball in the third session, and then wickets fell rapidly.
Niroshan Dickwella and Dilruwan Perera briefly raised Sri Lanka hopes of a late fightback, but the partnership was broken at 35, with Dickwella (28) being lured into a cover drive by Moeen, only to find Buttler at short cover.