I decided want to aim my study to be a good web developer, learning stuff like Java EE and etc. But first, I would like to create a good base. Before creating advanced web systems, I would like to know how to create good websites, with the basics, like HTML, CSS, Javascript, PHP, patterns, design, structures.

So, what are the best books to learn it. I would like something with examples and exercises, like little projects. That's because I already tried to study this stuff, and without practice it's useless.

Thanks!

(OBS: I think that before going to Java EE, its good to be a good web designer, from the basics, right)