Eight Republicans joined Democrats to approve the bill by a vote of 236-173.
The Equality Act seeks to add protections against discrimination based on sexual orientation and gender identity to existing civil rights laws.
On Monday, the Trump administration said that the president is opposed to the legislation.
Out Representative David Cicilline of Rhode Island called passage “truly historic.”
“The American people think it’s time to protect the LGBTQ community,” Cicilline said. “There is nothing more central to the idea of America than the guarantee of equal protection under the law for every single American.”
House Speaker Nancy Pelosi said that the legislation brings the nation closer to fulfilling America’s promise of liberty and justice for all.
“Fifty years after the LBGTQ Americans took to the streets outside of New York’s Stonewall Inn to fight against harassment and hate, we take pride in the progress we have forged together,” Pelosi said on the House floor. “Our Founders, in their great wisdom, wrote in our beautiful preamble – wrote of the blessings of liberty, which were to be the birthright of all Americans. To bring our nation closer to the founding promise of liberty and justice for all, we, today, pass the Equality Act and finally, fully end discrimination against LGBTQ Americans.”
Republicans who voted for the legislation include Representatives Susan Brooks of Indiana, Mario Diaz-Balart of Florida, Brian Fitzpatrick of Pennsylvania, Will Hurd of Texas, John Katko of New York, Tom Reed of New York, Elise Stefanik of New York, and Greg Walden of Oregon.
The bill faces a steep incline in the Republican-controlled Senate.