The House voted 257 to 167 late Tuesday to halt the nation's tumble over the fiscal cliff by agreeing to a Senate-passed measure that restores the barely expired Bush-era tax cuts for most people while raising taxes on high earners.

The vote also postpones a cascade of massive reductions in domestic and military spending.

"This is a great victory for the middle class, whose taxes will not go up tomorrow," declared Rep. Marcy Kaptur, a Democrat whose Ohio district suffers from a struggling economy and an 8.2 percent unemployment rate.

While lawmakers acknowledged the agreement will spare the economy potential damage, the measure is far from the sweeping deal both parties had hoped to accomplish.

Just weeks ago, Republicans and Democrats alike agreed spending and entitlement reform should be coupled with tax increases in order to reduce the nation's staggering debt and deficit. But with time running out, and significant partisan differences unresolved, lawmakers settled for the smaller package.

The bill passed Tuesday, according to the Congressional Budget Office, includes few cuts and would increase the deficit by almost $4 trillion.

"We know it's far from perfect," Rep. David Dreier, R-Calif., admitted.

House passage, which came less than a day after the Senate vote, clears the bill for President Obama's signature and ends the threat of tax hikes for most, but not all income earners.

The bill will preserve the Bush tax breaks permanently for couples earning less than $450,000 and individuals making less than $400,000.

The tax agreement represents a compromise for both parties, as the GOP had resisted any rate increase and Obama had campaigned on a promise to hike taxes on anyone earning more than $200,000.

The bill excludes a provision that would allow Obama to raise the nation's borrowing limit, however, so another partisan fight over spending looms just weeks from now and GOP conservatives signaled Tuesday they are going to stand firm on demanding spending reductions.

It took nearly an entire day for the Republican-led House to decide whether to take up the Senate bill, as the party's fiscally conservative faction balked at the lack of spending cuts in the legislation.

The bill postpones by two months more than $1 trillion in automatic spending cuts signed into law more than one year ago.

House Speaker John Boehner, R-Ohio, in an attempt to appease Republican lawmakers, offered to attach an amendment to the Senate bill that would cut $330 billion in federal spending. But the GOP found the reductions were not deep enough to justify the tax rate increase.

Instead, Boehner put the Senate bill on the floor without any additional cuts and in an unusual move, let it pass with mostly Democratic support.

"It is a good way for us to have a happy start to a new year by taking this first step," House Minority Leader Nancy Pelosi, D-Calif., said.

The bill comprises more than a dozen provisions, including a tax increase on capital gains dividends, from 15 percent to 20 percent for households earning more than $450,000.

The bill also includes an extension of federal unemployment insurance, which expired Tuesday, and a one-year extension of Medicare reimbursement rates for doctors that were set to drop by 27 percent.

The bill does not extend the 2 percent payroll tax cut that was originally part of the 2009 stimulus package, which means a $50,000 paycheck will shrink by about $1,000 annually.