Best book / website to learn HTML

I want to expand my HTML skills. I only know the basics. I could take an online class from Athabasca university, but the class costs 700$, won’t be transferable to a future degree at a different institution, and the class text is from 2005! That might as well be 50 years ago at the rate computers change. Is there an online reference, or perhaps one really good textbook / workbook I could purchase instead?

I want to design my own personal website, and a website for a summer camp my girlfriend is running.

Very good reference, and has quizzes for sections, and sandboxes (an open field to let you make changes to code and see the result live next to it.

What exactly do you want to learn?

The basics of HTML haven’t really changed in the last 8 years or so. Anything new (mostly, the proposed and partially implemented HTML 5 standard) you can pick up online in a day or two unless you’re also going for advanced javascript tricks. Stay away from XHTML if you don’t need it - and if you don’t know that you need it, you don’t need it. If you want to know the tricks of implementing nice layout/design, I recommend you take a good look at “modern” CSS and how to use it. I haven’t read it, but O’Reilly books are usually pretty good, so you may want to consider the quite recent HTML & CSS: The Good Parts, which might work well with general reference sites like w3schools.

Another vote for w3schools. That’s the first place I look when I need to know something about any web-related technology.

A third vote for w3schools. I’ve been using that to learn HTML and a lot of the other stuff they have.

Every once in a while I run across something that I am not getting on w3schools, so I look at other tutorial sites. Then I go straight back to w3schools, because it is so much better than any other sites I’ve found.

HTML isn’t the only thing you’ll want to learn, though. Here’s what you should know before diving in:

HTML (hyper-text markup language) is the fundamental set of building blocks that you use to build your web site. You can put together a web site with nothing but html. Your html should ideally be all about the pages content.
CSS is how you give all of your pages the same look. It can be a little non-intuitive to work with, but if you have fifteen pages and you want all of the pages to have blue links and brown text, it will save you a lot of pain in the long run.
JAVASCRIPT is how you make your page do stuff, instead of just sitting there. If you want your page to do anything beyond show pretty pictures and have links to other pages, you will want to learn javascript.

There are two variants of the above worth mentioning:
XHTML is extended HTML. Essentially, it’s HTML with a slightly more rigorous syntax to allow smartphone surfing.
AJAX is a technique, rather than a language. It allows a page to change after the page has been loaded, without reloading. This is how the google dropdown works. It’s pretty advanced stuff, so you probably won’t be using it, but you’ll see it mentioned.

O’Reilly has great books for beginners

Head First HTML with CSS & XHTML is a great place to start. You’re library may have it.

This will cover HTML (XHTML) and CSS basics. Of course you’ll want more and O’Reilly has other books like Javascript and PHP.

As others said, w3schools is a great tool as is Dynamic Drive