Roshen Silva steered Sri Lanka into a lead with a classy half-century after England looked destined to take a healthy advantage on day two of the second Test in Pallekele.
Sri Lanka were in trouble on 165-6 on Thursday but led by 46 at stumps after recovering to 336 all out.
Dimuth Karunaratne (63) and Dhananjaya de Silva (59) made half-centuries and Roshen top scored with a superb 85 after receiving support from the tail.
Jack Leach (3-70) and Adil Rashid (3-76) took three wickets apiece, while the tourists were also boosted by five penalty runs - taking their first-innings total up to 290 – awarded after Roshen was adjudged to have deliberately run short.
Sri Lanka added 84 runs for the last two wickets as they attempt to level the three-match series, with nightwatchman Leach successfully seeing off one over before the close.
Day 2, Stumps: Sri Lanka gain a first innings lead of 46 runs. SL 336 v ENG 290, 0/0 (1.0 Ovs) Roshen Silva 85, Dimuth Karunaratne 63, Dhananjaya de Silva 59 : Jack Leach 3/70, Adil Rashid 3/75. #SLvENG pic.twitter.com/0A63Zd7l9T— Sri Lanka Cricket (@OfficialSLC) November 15, 2018
Moeen Ali (2-85) struck in the third over of the day after Sri Lanka resumed on 26-1, Malinda Pushpakumara (4) giving Rory Burns a simple catch at midwicket.
Karunaratne played with great application for a deserved half-century and it took a moment of brilliance from Ben Stokes to run the opener out with a direct hit when the all-rounder only had one stump to aim at.
Sri Lanka were 139-4 at lunch after Stokes demonstrated his prowess in the field again with a brilliant instinctive one-handed catch at first slip when Leach drew an edge from Kusal Mendis (1).
Dhananjaya pulled Stokes for four to bring up his half-century and played with finesse before he was caught behind off Rashid, who generated huge turn to remove Angelo Mathews (20) in the same manner.
Roshen played with increasing authority in a tricky situation, but Sri Lanka were facing a big first-innings deficit when Niroshan Dickwella (26) was trapped leg before by Joe Root.
Dilruwan Perera became Leach's third victim just two balls after Roshen reached his fourth Test half-century at the start of the final session, but Akila Dananjaya offered support in a ninth-wicket stand of 56.
There was confusion when umpire Marais Erasmus deemed Roshen ran short on purpose at the non-striker's end before returning to other, as he and Dananjaya looked unsure if the ball touched the boundary ropes at third man.
He took that on the chin and dished out more punishment of his own, lofting Moeen for six before Rashid finally dismissed him to end the innings after Dananjaya fell for a brisk 31.
Leach played out an over from Dilruwan with confidence as Burns watched on at the other end, ensuring no further damage was done on a frustrating day for Root's side.
|Pochettino or Sarri for Juve? We´ll see – Lippi|
|Buccaneers release McCoy after nine seasons|
|England want to leave Europe and they´re in two finals – Mancini jokes about Brexit|
|Raptors star Leonard ´will be ready´ to face Bucks – Nurse|
|Iguodala out of Game 4 against Trail Blazers|
|Allegri inducted into Italian Football Hall of Fame|
|Steelers QB Roethlisberger ´genuinely sorry´ for Brown comments|
|Mets´ Cespedes fractures ankle in ranch accident|
|Italy remain at top table, Great Britain rally to relegate France|
|Guardiola convinced Kompany´s destined to return to Manchester City|
|Yastremska sets up Stosur clash in Strasbourg|
|Anderson stars for Lancashire on return from injury|
|Ebden and Seppi shocked in Geneva, Humbert shines at Lyon Open|
|AFC Champions League Review: Spain great Xavi ends playing career with defeat|
|Bernardo Silva makes Champions League pledge after winning Man City award|
|Henin impressed by Halep ahead of French Open defence|
|I love you, I´m out - Departing Kompany has his mic-drop moment in City´s trophy parade|
|Abelardo opts to leave post as Alaves coach|
|Magic Johnson points finger at Pelinka after Lakers power struggle|
|Junaid deletes inflammatory tweet following World Cup squad omission|
|Bosz: Champions League improves chances of keeping Brandt & Havertz|
|PSG insist Mbappe will stay despite forward´s ´new project´ comments|
|Former Salford forward Turgut hospitalised with ´severe injuries´|
|Potter takes over as Brighton and Hove Albion boss|
|Ancelotti happy at Napoli amid Juventus links|
|Hemel Stags on course for Ottawa relocation, New York club a work in progress|
|Nadal overtakes Federer´s top-10 streak|
|Omitting Wahab and Amir would have been foolish - Inzamam|
|Scotland appoint Kilmarnock boss Clarke|
|I´ll keep my place if Pogba arrives at Madrid – Kroos|
|Kroos: Madrid struggles ´normal´ after Champions League dominance|
|Pogba, Hazard and Mbappe in, Bale and Isco out? - Real Madrid set for busy close-season|
|Double amputee Monger stunned by Grand Prix de Pau triumph|
|Walter to take over Stuttgart from next season|
|Giannis expects Milwaukee to buck their ideas up after Game 3 loss|
|Bolivian FA confirms death of referee Victor Hugo Hurtado|
|Australia opener Burns leaves Lancashire for personal reasons|
|Record-breaking female driver Chadwick lands Williams development chance|
|Semedo cleared of concussion to boost Barcelona|
|Iguodala questionable for Game 4|
|Neymar should not captain Brazil at Copa America - Edmilson|
|Wahab, Amir and Asif named in final Pakistan World Cup squad|
|Bale staying at Madrid impossible as Zidane is ´not keen´ - Calderon|
|Kroos agrees Real Madrid extension to 2023|
|Gundogan to renew contract talks with Manchester City|
|Folau opts not to appeal against Rugby Australia ban, still considering options|
|Nadal clear French Open favourite – Djokovic|
|Nedved: No Juve decision amid Sarri and Inzaghi links|
|Gil Marin: We need players totally committed to Atletico|
|Gardner´s big game helps Yankees pull away from Rays|
|This is playoff basketball – Leonard on playing through injury in Raptors win|
|Second most NRL games and 99 tries – Cronk´s career in Opta numbers|
|Spieth: I´m almost back at my best|
|Three takeaways from Raptors´ key Game 3 win over Bucks|
|Trail Blazers star Lillard addresses rib injury|
|Raptors top Bucks in double-OT thriller|
|MLS Review: Nani brace lifts Orlando, Galaxy stunned by Rapids|
|Cronk: It´s been one hell of a ride|
|Johnson upbeat despite falling short|
|Koepka holds on at US PGA – how a dramatic back nine unfolded at Bethpage Black|
|´Phenomenal´ and ´mind-blowing´ – Koepka basks in US PGA triumph|
|NRL great Cronk to retire at season´s end|
|Kevin Muscat to leave Melbourne Victory|
|Bethpage wobble does little to deny Koepka´s status as golf´s dominant major force|
|Brooks Koepka´s timeline of major dominance following US PGA triumph|
|Koepka relieved to retain US PGA title after ´stressful´ finish|
|Allegri seeking a challenge, not a sabbatical|
|Koepka retains PGA title despite back-nine collapse|
|Spalletti tells players to prove they´ve the bottle to play for Inter|
|City want to dominate English football forever, says Laporte|