An Italian activist shouting "it's okay to be gay" and dressed in a rainbow-colored outfit was detained as she entered an arena to watch an Olympic hockey game in Sochi.

Vladimir Luxuria, a former Communist MP in Italy, was stopped by four men on Monday and then driven away by police in a car with Olympic markings.

Luxuria had been walking around the Olympic Park in Sochi for about two hours, chanting pro-gay slogans in both English and Russian, before entering Shayba Arena.

Luxuria, a prominent transgender rights activist and television personality in Italy, was then surrounded by the men and then taken to the car park. It was not known where she was taken.

Russia has recently passed a law making it a criminal offence to promote gay issues to minors.

Before arriving at the stadium, Luxuria said she did not want to be arrested, reported AP, but would "to stand up for the rights of lesbian, gay and transgender people all over the world".

Luxuria had said earlier that she was detained on Sunday evening by Russian police who told her she should not wear clothes with slogans supporting gay rights. The police, however, denied detaining her.

Russian organisers had set up a protest zone leading to the Winter Olympics in Sochi, but no major protests had taken place.