The quake struck just off the coast of Lian town at 1:28 pm (0528 GMT), at a relatively deep 173 kilometres (107 miles), the Philippine Institute of Volcanology and Seismology told AFP.
The US Geological Survey measured it at 6.2 magnitude.
“Due to its depth we do not expect any damage,” the institute’s director Renato Solidum said on government television.
A rescue official at the town closest to the epicentre also reported no damage or casualties.
But buildings in Manila and other nearby areas swayed, with employees of Malacanang presidential palace and other government buildings in central Manila and the nearby town of Bacoor evacuated, witnesses said.
“City hall employees as well as those transacting business there were ordered to leave the building as a precaution,” government lawyer Bugsy del Rosario told AFP from Bacoor.
ABS-CBN television also showed photos of students stood outside schools.
“It wasn’t really that strong. We did not see anyone running out of buildings here,” fire officer John Christopher Carandang told AFP by telephone from Lian, a town of 46,000 people about 70 kilometres (43 miles) south of Manila.
The Philippines lies on the so-called Ring of Fire, a vast Pacific Ocean region where many earthquakes and volcanic eruptions occur.
Last month a 6.5-magnitude quake killed two people and heavily damaged power generation plants on the central island of Leyte, leaving large areas of the central Philippines without power for weeks.
Eight people also died and more than 250 were injured following a 6.5-magnitude quake outside the southern city of Surigao in February.
The latest major quake to hit the Philippines was in 2013, when a 7.1-magnitude quake left more than 220 people dead and destroyed historic churches in the central islands.