There are a number of books and web sites that teach these. Unfortunately there are some that teach a really obsolete approach as well so you’ll need to look for reviews etc to be able to tell the difference.
Who should read this book?
Beginner level web developers. Reasonable knowledge of HTML and CSS is assumed. It’s a fast paced tutorial so may be unsuitable for absolute tech newbies.