Police and witnesses said the clashes erupted in Dhaka on Sunday as hundreds of opposition workers pushed through a police barricade and marched to the election commission's office, demanding the resignation of the election commissioner, who they said was biased.
Police fired tear gas shells and used water canons to break up the protest launched by a 14-party alliance led by Sheikh Hasina, the former prime minister, to compel the government to make the election commission more independent, before elections next year.
Police said at least 20 opposition workers were detained after they had burnt a bus and damaged vehicles during the protest on Sunday, which is a working day in Muslim Bangladesh.
A senior police officer said: "The situation is under control, but there have been sporadic clashes."
Hundreds of police in riot gear stood guard outside main government buildings.
Opposition leaders said they had planned a peaceful protest, and blamed the authorities for the violence.
Tofael Ahmed, a leader of the main opposition Awami League, said: "It is an unprovoked attack on a peaceful march. A number of senior leaders of our party have been injured."
Political analysts say that violence between rival parties is likely to surge during the year to the polls. Hasina said she might boycott - or even try to resist - the election unless Begum Khaleda Zia, the prime minister, met her demands for electoral reforms.