Gay rights activists have clashed with homophobic protesters in St Petersburg, Russia.

Police arrested dozens of people from both sides after fights broke out over a new law that bans gay 'propaganda', Reuters reports.

The bill bans gay rights rallies and can be used to prosecute anyone judged to be voicing support for same-sex relationships.

Around 100 people took part in the march against the law but they were met with anti-gay demonstrators, who threw smoke flares, stones and eggs.

One homophobic protestor threatened the group with a leather whip.

Police used batons to stop the violence and took a number of people into custody.

The march had been organised by Ravnopraviye, which campaigns for equal rights.

Natalya Tsymbalova, a gay rights activist, told the news service: "We staged the rally to support our rights and express our protest against the homophobic law."

The bill is further evidence of Russian intolerance for gay people. Last year, an online poll showed that 15% of the LGBT community in Russia had been physically attacked because of their sexuality in the last 10 months.

The Russian government passed the bill on 11 June. It bans the distribution of material that promotes "non-traditional sexual relations" to minors.

Heavy fines will be issued to those who break the law, which is expected to be signed by president Vladimir Putin in the near future.

Putin has championed socially conservative values since he began his six-year term last year. He is a member of the Russian Orthodox Church and uses its influence as a source of political support.

The clash took place on the same day that gay rights campaigners marched through the streets of London for Gay Pride 2013.