Also read: England recalls Jennings, Foakes for test series v Sri Lanka
Root was unbeaten on 99 off 161 balls with seven boundaries and debutant Dan Lawrence, who was dropped by wicketkeeper Niroshan Dickwella in the last over, as England went to lunch on 40 not out to consolidate its lead to 71 runs.
Root had scored a century at Pallekele during England’s last tour to Sri Lanka in 2018 when England won 3-0.
England had rattled Sri Lanka for 135 in the first innings inside the first two sessions on Thursday with Dom Bess claiming 5-30 and Stuart Broad picking 3-20.
England lost overnight batsman Jonny Bairstow in the second over after rain delayed the start of the second day for an hour and 10 minutes.
Also read: Simmons refuses to get drawn in on players who opted out of tour
Root survived a leg before wicket television referral off Dilruwan Perera’s second ball of the day before Lasith Embuldeniya (3-80) got Sri Lanka the breakthrough from the other end.
Bairstow couldn’t add to his overnight 47 and was caught in the gully as he prodded to left-arm spinner but was brilliantly snapped by Kusal Mendis.
The breakthrough ended a strong 114-run stand after the visitors resumed on 127-2.
Also read: Defiant India forces a draw in tense 3rd Test vs Australia
But Root and Lawrence then added another productive 75-run stand to take the game further away from Sri Lanka. Lawrence played some fluent cover drives against the spinners and even hit Embuldeniya for a six over mid-wicket as he grew in confidence in his debut Test.
Lawrence could have fallen to Embuldeniya in the last over before the break, but Dickwella not only failed to grab the catch, but missed the stumping as the batsman dragged his backfoot out of the crease.