Strong winds battered the island for much of the day but at 5:00 pm (0900 GMT) the CWB downgraded Soulik to a tropical storm and lifted the land warning as it churned towards mainland China.

Nine people were rescued from flooded homes in the Shiangshan area of Puli, a town in central Nantou county, which was also hit by landslides.

"The water came very fast, catching residents totally unprepared -- in some areas, it was one-storey deep," township official Wu Yuan-ming told AFP.

The nine were rescued by firefighters in rubber boats after the river broke its banks, Wu said.

"Flooding and landslides were widespread in the town, especially in the areas near mountains," he added, calling the effects of the typhoon "more serious than we predicted".

Landslides reached the backyards of residents' homes but they had already evacuated, Wu said, adding that the ground may have been loosened by an earthquake last month.

A major landslide on a mountain road leading to Taian, a central town famous for its hot spring resorts, was also reported by local media.

The northern village of Bailan saw the heaviest rain, measuring 900 millimetres (35 inches) over the past two days, with winds gusting up to 220 kilometres per hour.

Streets were submerged under 30 centimetres of seawater in the port city of Keelung, the National Fire Agency said, with flooding also reported in the coastal area of Yilan and in New Taipei City, the area surrounding the capital.

Low-lying houses along the Hsintien River through greater Taipei were flooded, including one aboriginal village from which residents had been evacuated Friday, a police officer told AFP.

Local television showed roofs ripped from homes in northern Keelung and in Taipei, where 120 kilometre-per-hour winds and downpours disrupted power, uprooted trees and left the streets strewn with rubbish.

"I was very worried, I couldn't sleep the whole night because the sound of the wind was so loud and my building was shaking almost like there was an earthquake," Taipei resident Josephine Lin told AFP.

Across Taiwan, electricity supplies in nearly 800,000 homes were down but half had been restored by Saturday afternoon, according to the Taiwan Power Company.

Around 170 flights into and out of Taiwan were cancelled or delayed, while offices and schools remained closed, with the public advised to stay indoors.

Soulik hit China's southeastern province of Fujian at about 4:00pm (0800 GMT) with winds of up to 118 kilometres an hour (73 miles), the National Meteorological Centre said.

More than 300,000 people were evacuated and 5,500 soldiers dispatched along China's southeast coast to help with rescue efforts, state-run news agency Xinhua said.