Getting started with web development
It’s likely that your first port of call, if you’re completely new to code, should be HTML Dog - and work through that. Because books that teach the absolute basics well are few and far between.
Once you’ve done there, try taking a look at the following books:
Designing with Web Standards (third edition) - will not tech you much code but *will* teach you a good ethos and allow you to understand what makes good code good and bad code bad.
Bulletproof Web Design (3rd edition) has just come out, and is very good - it shows different methods of solving the same problems and explains the pro’s and con’s of each. HTML & CSS.
Introducing HTML5 (second edition) is a great resource for learning about HTML’s newest capabilities and how to use them properly. Alas, it assumes you’re already familiar with HTML to a certain extent.
PHP & MySQL Web Development (now on the 4th edition) was what taught me PHP (back on the first edition), it’s a great introduction and covers a lot of ground. Be wary of the HTML mark-up they use in their examples because the HTML/CSS isn’t great. That’s not what the book is about - pay attention to the PHP/MySQL, ignore the HTML.
I used to love Eric Meyer’s CSS books, but they are terribly out of date now and I don’t know of any modern equivalents that teach CSS from basic principals.
Once you’ve learned the basics I highly recommend getting Adaptive Web Design and Responsive Web Design, which are both very new and teach new design practices with clear rationale and good code examples. They belong together as books.
Be aware however that books age quickly, and you’ll get the most recent techniques and best practices online.
Good luck, and have fun!