Around eight attacks by what witnesses believed to be Russian jets wounded scores of people and levelled several multi-storey buildings in residential areas of the northwestern city, they added.
Russia’s Defence Ministry later said media reports that its planes had bombed Idlib were not true, Interfax news agency reported.
Two rescue workers said the death toll was at least 30. The U.K.-based Syrian Observatory for Human Rights said at least 26 people were killed and casualties were expected to rise as rescue workers searched for bodies under the rubble.
Video footage by activists on social media showed civilians, including young children, being treated in a main city hospital where the injured had been rushed for treatment.
“We are still pulling bodies from the rubble,” said Issam al Idlibi, a volunteer civil defence worker.
The extent of the damage and the debris bore the hallmarks of a Russian attack, two witnesses said.
Russian planes have targeted a number of towns and villages in the area since entering the Syrian conflict in September 2015 to back ally President Bashar al-Assad.
But activists and residents also said there had been a reduction of Russian strikes in Idlib province since a Turkish-Russian brokered cessation of hostilities late December.
Planes from the U.S.-led coalition have also launched a number of attacks in the rural province, a major stronghold of jihadists, many of them formerly affiliated to al Qaeda.
Idlib’s population has been swollen by thousands of Syrian fighters and their families evacuated from villages and towns around Damascus and Aleppo city, which was retaken by the government in recent months.
Separately, at least four people were killed in air strikes by unknown jets in the town of Arbin in rebel-held Eastern Ghouta, northeast of the capital. The Syrian army and pro-government militias have been seeking in recent days to gain new ground there.
(Reporting by Suleiman Al-Khalidi; Editing by Tom Heneghan)
Copyright 2016 Thomson Reuters. Click for Restrictions.