Protesters across Bosnia have set fire to government buildings and fought with riot police in a third day of the worst civil unrest there since a 1992-95 war.

Protests remained largely contained to the Croat-Muslim-Bosniak half of Bosnia but were gaining in intensity.

By 7pm, protesters had dispersed in three flashpoint towns, including the capital Sarajevo, but police remained out in force. All shops were closed and streets were littered with glass and debris.

Hours earlier, police in Sarajevo fired rubber bullets at several thousand protesters who set fire to the headquarters of the cantonal government and to a section of the country's presidency building.

The cantonal building was still smouldering in the evening.

The protesters also tried to force their way into the presidential buildings, but were repelled by special police firing water cannon.

Around 145 people were injured in Sarajevo, including 93 policemen.

Several thousand protesters in the southern town of Mostar stormed two local government buildings and also set fire to the local city hall. Police did not intervene.

In the town of Tuzla, once the industrial heart of northern Bosnia, protests over factory closures again turned violent.

Demonstrators stoned and torched two buildings of the local authority and clashed with police. Trapped by the flames, some leapt from windows, a Reuters photographer said.

Some protesters took computers from the Tuzla municipal building and looted a local supermarket inside the building.

In Sarajevo, two cars and a police guard's cabin were set on fire in front of the presidency building and black smoke was still seen hours later.

A government building in the central town of Zenica was also set alight and around 55 people were injured, including 23 police officers. Protesters, many of whom heeded calls on Facebook to take to the streets, chanted "Thieves!" and "Revolution!"

The Zenica and Tuzla cantonal governments, in charge of local issues such as privatisations, said their chiefs had resigned in the face of the protests.

Observers could point to no single cause for the protests,which started on Wednesday in Tuzla and spread to towns and cities across the impoverished former Yugoslav republic, where more than one in four of the workforce are jobless.