At least 21 people including several children have died after a bus crashed off a flyover near Venice and burst into flames, officials say.

The bus broke through a barrier and plunged almost 15m (50ft) near railway tracks in the district of Mestre, which is connected to Venice by a bridge.

Five Ukrainians, one German and the Italian driver were among the dead, city prefect Michele Di Bari said.

Venice Mayor Luigi Brugnaro said a “huge tragedy” had taken place.

“An apocalyptic scene, there are no words,” he said on social media.