Armed supporters of Yemen's leader trapped foreign ambassadors inside a diplomatic mission in new turmoil that swept across the capital as the president refused to sign an agreement calling for him to step down in 30 days.
Security forces broke up the crowd after several hours of letting them besiege the embassy.
But President Ali Abdullah Saleh's balking at the US-backed deal threatens to wreck hopes for a peaceful resolution to the chaos that has consumed Yemen, where hundreds of thousands have protested for three months, defying a bloody crackdown, to demand his ousting.
Mr Saleh has already twice refused to sign the agreement. But this weekend it had appeared he was finally relenting, under intense pressure from his allies, the United States and Gulf Arab countries that mediated the accord.
The opposition parties signed the accord on Saturday, and the Yemeni president grudgingly promised he would sign the following day.
Instead, he showed his determination to cling to the power he has held for 32 years, despite increasing isolation.
His regime unleashed hundreds of armed loyalists into the streets of Sanaa in an apparently orchestrated campaign to demand he stays in power.
The British ambassador, along with the ambassadors of the US the European Union, Saudi Arabia and other Gulf Arab nations, had gathered at the United Arab Emirates Embassy, waiting to be taken to the presidential palace for the expected signing at noon.
They were besieged by a mob of hundreds of Saleh loyalists, and the crowd blocked the entrances to the mission, trapping the diplomats inside.
Hours later, Yemeni military helicopters ferried the US ambassador to the presidential palace to witness the signing, witnesses said, and although several top figures from Mr Saleh's ruling party did sign the accord, the president himself refused.