Bangladesh claimed five wickets to restrict England to 131-5 in its second innings on Sunday, but the visitors took a 434-run lead on the third day of the first test.
Earlier, Graeme Swann claimed five wickets as Bangladesh was dismissed at 296 in its first innings in reply to England’s 599-6 declared.
England then elected not to enforce the follow-on, keen to rest its bowlers before a likely declaration on Monday. At tea, England was 12-0 in its second innings, but it lost skipper Alastair Cook (39) and four others in the last session.
Cook was first to go in its second innings, caught by Aftab Ahmed off Mahmudullah.
Abdur Razzak (2-7) trapped Michael Carberry (34) lbw while he also dismissed Paul Collingwood (3), caught by Mahmudullah.
Skipper Shakib Al Hasan trapped Kevin Pietersen (32) lbw, and claimed Jonathan Trott (14), caught by Junaid Siddique.
Ian Bell (0) and Matt Prior (0) will resume on Monday.
In Bangladesh’s troubled first innings, Mushfiqur Rahim scored 79 runs to head the home side’s meagre resistance, adding 113 runs for the eighth wicket with Naeem Islam, but the hosts lost their last three wickets in the space of four deliveries.