There has been a trend of straight male actors playing gay characters for film and TV lately
However, top male actors have been accepting such roles since way back and most of them have received accolades for portraying characters that are way out of their comfort zones.
Some of the most notable ones are Jared Leto's Academy Award-winning performance as an AIDS-stricken transgender woman in "The Dallas Buyers Club."
Meanwhile, Jake Gyllenhaal and Heath Ledger made headlines as cowboy lovers in "Brokeback Mountain." Benedict Cumberbatch also challenged himself by portraying Alan Turing, the genius mathematician who helped put a stop to World War I but was later persecuted for being gay.
James Franco, on the other hand, had taken on several gay characters throughout his career. He's been in movies such as "Milk" (where he co-starred with Sean Penn), "Howl" and "Sal."
In TV, Eric Stonestreet currently plays an over-dramatic gay man in "Modern Family" which is a complete opposite to his reserved personality in real life. Nelsen Ellis is also well-known for her role as Lafayette Reynolds in "True Blood."
Other straight actors who played gay roles include Leanardo DiCaprio ("Total Eclipse," Joseph Gordon-Levitt ("Mysterious Skin"), Jim Carey and Ewan McGreggor ("I Love You Philip Morris") and Tom Hanks ("Philadelphia").