England have been set a total of 318 to win the first one-day international in Colombo following a dominant display from Sri Lanka.
Alastair Cook put England into the field after winning the toss, but Tillakaratne Dilshan and Kusal Perera impressed instantly with the bat by hitting a combined 120 before losing their first wicket.
Perera was forced off the field having taken 59 runs off 74 balls after getting left stranded in the middle of the pitch when throws from Joe Root and Ravi Bopara led Joss Buttler to whip off the bails.
Shortly afterwards, Moeen Ali got his first wicket of the innings by getting Kumar Sangakkara (2) out for an lbw, but England struggled to find their momentum.
Dilshan looked to close in on a century, but Chris Woakes caught and bowled the batsman for 88, leaving Angelo Mathews to lead the attack for Sri Lanka.
James Tredwell halted the hosts' progress by taking the wickets of Mathews (33) and Mahela Jayawardene (55) in two balls following impressive catches from Ben Stokes and Buttler respectively.
With four overs left to play, England tried to restrict Sri Lanka to less than 300 by dismissing Thisara Perera, who sliced the ball high following a delivery from Woakes, and resulted in a strong catch from skipper Cook.
However, Sri Lanka were able to reach the 300-run mark after Jeevan Mendis hit four off Woakes in the 48th over, followed by a six off the next ball.
After 50 overs, Sri Lanka posted 317-6.