Air strikes that hit a school in Syria's rebel-held Idlib province killed 22 children and six teachers, the UN's children agency UNICEF said on Wednesday.

"This is a tragedy. It is an outrage. And if deliberate, it is a war crime," said UNICEF director Anthony Lake.

The Syrian Observatory for Human Rights said "warplanes - either Russia or Syrian - carried out six strikes" in the village of Hass, including on a school complex.

The raids hit the village around 11.30am local time, an activist with the opposition Idlib Media Centre told the AFP news agency.

"One rocket hit the entrance of the school as students were leaving for home, after the school administration decided to end classes for the day because of the raids," the activist said, speaking on condition of anonymity.

Other activists from the province circulated a photograph on social media of a child's arm, sheared off above the elbow, still clutching the strap of a dusty black rucksack.

The authenticity of the picture could not be independently verified.

The Observatory, a UK-based monitor of Syria's five-year conflict, initially reported two schools had been hit, but later clarified that it was a school complex made up of multiple buildings.

Idlib province is controlled by the Army of Conquest, an alliance of rebel groups and militants including the Fateh al-Sham Front, which changed its name from the Nusra Front after breaking off ties with al-Qaeda earlier this year.

The province has come under increasing bombardment in recent weeks, according to the Observatory.

Syrian government forces and their Russian ally have been criticised by rights groups for indiscriminate attacks on civilian infrastructure.

More than 300,000 people have been killed since Syria's conflict erupted in March 2011.