A proposed peaceful climate march in Paris has been halted after it was infiltrated by other protest groups.
Groups of yellow vest demonstrators joined in, breaking windows and setting fire to street barricades in a resurgence of protests against the French government.
Families abandoned the march as violent clashes prompted police to fire tear gas and make over 100 arrests.
A huge security operation involved 7,000 police officers.
The climate change march and a protest against pension reform were both authorised, while the yellow vest demonstrations went ahead illegally.
Several hundred so-called “black bloc” protesters, who covered their faces with black scarves, sunglasses and hoods, gathered at different points in the French capital.
The majority of yellow vest demonstrators did not wear the trademark fluorescent jackets to avoid being visible.
As the violence worsened, police, who have previously been accused of heavy-handedness, used tear gas to disperse groups of protesters.
A video posted on Twitter shows climate change protesters covering their mouths as tear gas from further afield was carried to them by the wind.
At some points, the two protests appeared to converge with a giant banner reading “Macron: Polluter of the earth”.
Footage shows two chants being sung at the same time, which translate into English as: “Macron, we are here” and “We are hotter than the climate”.
Greenpeace told climate change protesters to abandon the march as conditions were not appropriate for a non-violent protest.
The gilets jaunes (yellow vest) movement started last November over increased fuel prices, evolving into weekly protests that continued well into the spring and often turned violent.
They accused President Emmanuel Macron of being out of touch.
The protests prompted Mr Macron to introduce reforms including tax cuts and a more decentralised government.
One of Saturday’s protesters told French media outlet Le Monde that they continued to protest because of “injustice” but said they were worried about the “bad image” of the yellow vests.
“I am not a thug,” the protester insisted.
Saturday’s protests interfered with France’s annual Heritage Day, when well-known sites open their doors to the public.
On Friday, President Macron said it was good that that people could express themselves but asked that the protests proceeded in a “calm” manner.
He has not yet commented on Saturday’s events.
All pictures copyright.