Young people see how poorly paid people in different fields are, and decide not to go in that direction. Health care is one example, where you hear about doctors being paid well, but then, all of the others getting paid very little. Nurses need to go on strike to get paid properly all over the place and on a regular basis, and that doesn't talk about the rest of the staff in a hospital.
You also have to look at where things will be in the next 20 years. With the Baby Boomers, when that generation dies off, there will be a drop in the need for health care jobs, or there will be an excessive number of them, but prices won't drop in the competition to bring in patients, so prices will remain high while there are too many health care offices around for the demand. Health care is actually an area that I expect will implode in the next 20 years. Technology jobs, yep, we are surrounded by technology, but the number of decent paying jobs are fairly low outside of the cities. How much can you charge to repair something that only costs $500 when new? So, lots of work to be done, but really, the pay doesn't reflect the level of skill needed, and that causes the overall economy to suffer as well.
The reality is that the culture in much of the USA doesn't favor education and having an educated population, and you need an educated population to handle the jobs that are available.