Port Of Spain:West Indies, replying to Sri Lanka's first innings total of 278, reached 268 for seven when bad light stopped play on the second day of the second Test on Friday.
Sri Lanka's bowlers exploited the lively Queen's Park Oval pitch and heavy conditions to keep scoring at a premium, but several West Indians got starts.
Vice-captain Ramnaresh Sarwan led the way with 57, left-handed opener Sewnarine Chattergoon scored 46, Devon Smith laboured for 47, captain Chris Gayle made 45, and Dwayne Bravo got 26.
Off-spin legend Muttiah Muralitharan captured three wickets for 64 runs off 23 overs and Thilan Thushara took two for 72 from 12 overs.
Gaining bounce and movement from the pitch, the Sri Lanka bowlers worked over the top-order batsmen of the West Indies.
In the 40 minutes available to them before lunch, much of the attraction was the long-running battle between Sri Lanka new-ball bowler Chaminda Vaas and Gayle.
Vaas has claimed Gayle's wicket seven times in his previous 10 Test innings against the Sri Lankans, but the big left-handed opener chose to open the innings rather than bat down the order as he did in the opening Test.
Vaas delivered a torturous opening over but the West Indies captain survived, and carried his side to 49 without loss at lunch alongside fellow left-hander Sewnarine Chattergoon, playing his first Test innings.
Twice Sri Lanka had a chance to remove Gayle before the interval.
On 24, Muralitharan did well to leap to his left to try and grab a powerful cross-batted stroke.
On 31, Ishara Amerasinghe failed to get close to another chance off Thushara.
Sri Lanka enjoyed modest success after the interval, as Chattergoon and Sarwan dug-in before rain prompted an early tea with West Indies on 133 for one.
The Sri Lankans had success in the third over after lunch, when Gayle was caught at gully by Michael Vandort in the third over following the interval off Thushara.
Chattergoon and Sarwan then consolidated and batted confidently until rain arrived about half-hour before the scheduled tea break.
Vaas made the breakthrough in the third over after tea, when he bowled Chattergoon, ending a 79-run, second-wicket stand, and next over, Marlon Samuels was dubiously adjudged lbw to Muralitharan for three to make the West Indies 141 for three.
Muralitharan was the bowler when Sarwan reached his 50 with a drive through the diving mid-off fielder for his eighth boundary.
But the world record-breaking bowler was soon rejoicing when Sarwan turned a delivery straight into the lap of Malinda Warnapura at short square leg to leave West Indies 177 for four.
Chanderpaul was then adjudged lbw to Thushara.
The visitors then had to labour for their next wicket, after Bravo joined Smith and counter-attacked to add 47 for the sixth wicket before two late wickets shook the West Indies.
Bravo playing back and across was adjudged lbw to become the first Test scalp for Amerasinghe, and Muralitharan bowled Smith with a well-flighted delivery in fading light.
Earlier, Sri Lanka had been dismissed about 50 minutes before lunch, when Chamara Silva hooking at a short, rising ball from Dwayne Bravo was caught inside the deep fine leg boundary for the top score of 76.
He led a rearguard action for the Sri Lankans to help them add another 61 runs before their innings closed.
Fidel Edwards was the most successful West Indies bowler with four wickets for 84 runs from 18 overs, Daren Powell took two for 59 from 17 overs, and Jerome Taylor ended with two for 74 from 17.2 overs after he was removed from the attack for delivering a second beamer in the innings to Silva.
Sri Lanka lead the series 1-0, after they won the opening Test at Guyana by 121 runs.
If they win the Test, Sri Lanka will clinch their first Test series win on Caribbean soil, and become the first side visiting the Caribbean to sweep a Test series of any length.