Several reasons for this phenomenon;
Continental lithosphere tends to be lighter and more buoyant (it literally floats on top of the magma). Part of this is because they have strong, solid cores (called cratons) around which there tend to accumulate bits and pieces of other plates and sedimentary buildup, which are usually lighter. California is a good example. California is a relatively new addition to the continental North American plate; the ocean used to be in Nevada. As the ancient Farallon plate (an oceanic plate) subducted beneath the North American plate, bits and pieces of the Farallon plate were either scraped off against the edge of the NA plate, adding to it a little at a time, or the volcanic eruptions caused by the melting Farallon plate caused this material to re-emerge and add to the surface of the NA plate. Thus, the initial buoyancy of the continental plate relative to the oceanic plate not only caused the oceanic plate to subduct, but further added to the size of the continental plate in the process.
Oceanic lithosphere tends to be young and dense. This is partially because it has spent its entire lifetime under the ocean, and therefore tends to be more like a sponge, with lots of water soaked into it. This means that when this rock hits the more buoyant rock packed into a continental plate, the oceanic plate has no chance of shoving the buoyant rock beneath its own heavy self; instead it collapses in on itself, before starting to subduct.