Prime Minister Stephen Harper accused Liberal Leader Stéphane Dion of rejecting the budget before even reading it, and suggested it was a document that would have made past NDP leaders proud.

Dion led off question period in the House of Commons Tuesday by slamming the budget for its neglect of students, the environment and aboriginals, and for failing to provide Canadians with broad tax relief.

"On the three pillars — economic prosperity, social justice, environmental sustainability — why did the government fail Canadians?"

Harper said the budget contains important tax reforms, and social, environmental and economic measures that have been demanded by Canadians.

He ridiculed Dion's response as the "most unfocused budget reaction" Canadians have ever seen from the leader of the Opposition.

The prime minister also referred to a column in the Globe and Mail that said the Liberals held a caucus meeting to decide whether to support the budget before they had read it.

"The leader of the Opposition doesn't single out for criticism any single initiative in this budget," Harper said. "But he's going to vote against every single one of them because he already made up his mind before he read it, and that's something he'll have to explain in the next election."

NDP Leader Jack Layton complained that the budget does nothing to fix the widening prosperity gap, and that big profitable corporations are getting most of the tax benefits.

He complained the budget does not include a $10 minimum wage and does nothing for housing or child care.

But Harper said the budget is focused on helping working families, and that it will close tax havens to ensure that corporations pay their fair share of taxes.

"The NDP, in opposing this budget, is rejecting what every NDP leader in history has stood for. The NDP leader should be ashamed of himself," Harper said.

The Liberals and NDP have said they oppose the budget. But the Bloc Québécois has indicated it will back Finance Minister Jim Flaherty's fiscal plan, which means the budget probably won't trigger an election.