Jos Buttler made a superb century but England lost by seven runs to Sri Lanka, who levelled the one-day series at 2-2 with one game to go.

The 23-year-old wicketkeeper-batsman thrilled the Lord's crowd with a scintillating 121 from 74 balls.

However, his innings, and England's hopes, ended un-ceremoniously when he was run out in the final over.

Meanwhile, Kumar Sangakkara set Sri Lanka on their way to 300-9 with a fine 112, which included 14 fours.

Left-hander Sangakkara showed why he is considered one of the game's greats with a fluent 19th ODI century as he and fellow veteran Tillakaratne Dilshan 71 put on 172 for the second wicket after England won the toss.