The coastal waters of Northern California are cold. What this means is that the cool temperature over the ocean in the summertime causes moisture in the air to condensate. The cold waters are caused by two factors: the Californian Current bringing cold surface water from the north and also upwelling that brings cold water from the depths to the surface. Hence the fog. When it winds from the west, it can get foggy within some distance in the inland from the sea as well.
Summertime fog and cloudy skies are not unusual in the south, either. But I'm guessing the shape of the coast makes Southern California less susceptible to the effect of the ocean currents. Also, the waters aren't quite as cold.