The House of Commons has voted to reject a no-deal Brexit under any circumstances and at any time - by a majority of just four.

312 MPs backed Caroline Spelman's amendment unconditionally rejecting leaving the EU without a deal, with 308 against.

It beefed up a government motion which stated its opposition to no-deal at the end of March but also noted the scenario "remains the default in UK and EU law".

The amendment tabled by Spelman, a former Conservative minister, nearly did not go to a vote after she declined to move it.

But Labour MP Yvette Cooper, a co-signatory, moved it in Spelman's stead, bringing about a second defeat for Theresa May's government in 24 hours after her deal was emphatically rejected on Tuesday night.

The surprise Commons verdict is not legally-binding on the government, but is Parliament's most decisive statement to date against a no-deal Brexit.

The amended motion in Theresa May's name was then passed by 321 votes to 278 - a majority of 43 - despite the government whipping Conservative MPs and ministers to vote against it, in chaotic scenes.

It was brought about by numerous abstentions from Conservative ministers - including Scottish secretary David Mundell.

Another amendment from the Conservative backbenches, tabled by Damian Green and known as "the Malthouse Compromise", was rejected by 164 votes to 374 - a 210 majority.

It called for the government and the EU to build on its preparations for no-deal, including by allowing a transition period as is currently planned for leaving with a deal.

The votes follow Tuesday's emphatic Commons rejection of the Prime Minister's Brexit agreement, where she was defeated by 149 votes.

Wednesday's results means Parliament will vote again on Thursday on whether to endorse a delay to Brexit beyond March 29 by extending Article 50.

Speaking after the votes, the Prime Minister said that given MPs had decisively rejected her deal as well as no-deal, a "much longer" Article 50 extension would be needed than some had envisioned.

She said Britain would therefore need to take part in European parliamentary elections in May.

Opening the no-deal debate for the government, environment secretary Michael Gove said: "If we do choose to leave without a deal on March 29 there'll be economic, political and constitutional challenges that this country will face.

"Now, we are a great country, we would get through it, we would in due course ensure that this country was more prosperous, freer and successful and, of course, Government has been working hard in order to ensure that we can be prepared for any eventuality."

But he added he was "acutely aware" the UK would be treated as a third country by the EU in the event of a no-deal and face tariffs on many products.

For Labour, shadow Brexit secretary Keir Starmer said he wanted to see the "mantra of my deal or no deal... dead and buried" with "as big a majority as possible" in Wednesday night's vote.

The SNP's Europe spokesman Stephen Gethins said: "Vote Leave backers told us that this was going to be the easiest deal in the world and we had nothing to worry about... these promises were not kept."

He added: "16 days out we're planning for the worst kind of Leave - the kind we were told would never happen."