Gay Conservative MP Nigel Evans says he was in denial and going through a “neanderthal phase” when he voted for Section 28.
The MP for Ribble Valley, who came out last year, backed the legislation to ban mention of homosexuality in schools and once voted against lowering the age of consent for gay men.
Speaking to the Guardian, he said: “I was going through denial and what I would describe as my neanderthal phase.
“I was just stupid, and clearly I wasn’t thinking. Of course, I was completely wrong.”
Mr Evans’ sexuality was an open secret in Westminster but he did not feel able to come out to the public until last year, at the age of 54. He claimed a Labour MP had threatened to out him.
In the interview, with lesbian comedian Rhona Cameron, he praised prime minister David Cameron for his “leadership” on gay rights issues.
He added: “I said it when I came out, I showed absolutely no leadership, whereas David Cameron has. When you say you can’t work out how there are so many gays in the Tory party – David is hugely instrumental in that, because of his approach to gay issues and equality.”
He said that “being something like the 22nd or 23rd openly gay MP is not brave at all” but sports men and women should be commended for their openness.
“If only we could get some gay footballers to come forward, that would help,” he said. “It’s daft to say there are no gay footballers in the premier league – of course there are. Every one of them who could possibly find the courage to come out would help so many people.”
Mr Evans, who is the deputy Speaker, said his position meant he could not give an opinion on the blood donation ban for gay men.
But he did say: “Equality is basically the rule of thumb, and that’s what it should be irrespective of what the issue happens to be. If you have distinguishing elements between gay and not gay, you have a problem.”