Sri Lankan captain Mahela Jayawardene hit an unbeaten 213 before England's top order crashed to leave the tourists fighting for survival in the third Test here.
The hosts carried their first innings from the overnight score of 384-6 to 499-8 before Jayawardene declared 50 minutes before lunch on the third day at the Galle International Stadium.