It's a generational mentality shift. The current generation entered the work force and experienced companies continually driving for "efficiencies". Sure, there were a few big names with good employee retention and culture, but by and large most were not that way. So, many of those workers, the current generation, were taught by this that the companies don't care about them or their career. This meant that they had to take a more active role to make any progress; which meant job hopping. Keep in mind that due to technology shifts, this is probably the generation with the shortest attention span as well.
Now, I do see more and more companies pushing culture, and because of it I do hear more and more colleagues looking for a good fit over pay, but this isn't going to be a quick transition. It will take years for companies to retrain the thought process of the current generation to trust them, and for management to get onboard in rebuilding that company image.