Every now and then someone asks me how they can learn how to put together web sites, and I always find it somewhat difficult to answer this question, when I do not know much about the person asking the question. Honestly site design can mean so many different things that there is not one answer that will satisfy everyone. Instead of trying to give an overall answer, let me be more specific. Suppose you have a lot of patience, you have an internet connection, and a lot of time to spend on a computer, but you do not know anything about web servers or HTML, but you at least know how to use Word on your computer. Basically you are starting from scratch.
The first thing you need to do is go to your local library and find the computer books section. This section will have lots of old outdated computer books which no one has read in over a year or two. However, the HTML 4 and XHTML books are what you are looking for. Browse through them all until you find a few that you are comfortable with and go home and read them. At the same time start looking at web sites that cover XHTML and CSS.
Eventually you need to start creating your first site in basic HTML on your computer. You will make many revisions and versions, the more you create, the more you will get the hang of it. Once you have the experience of working with HTML and CSS, you probably will need to re-read some of those books you checked out the library and this time around you probably will gravitate to certain areas of web design that you find more interesting. At this time I would recommend you check out The CSS Anthology, which is a great overall CSS book. You will also come to realize the differences between XHTML and HTML and hopefully gravitate to at least Transitional XHTML. For an overall argument for XHTML check out Jeffrey Zeldman’s Designing With Web Standards and for practical applications of XHTML you can take a look at Web Standards Solutions: The Markup and Style Handbook by Dan Cederholm.
After all the reading and hands on coding, you can explore the infinite resources of the Internet and HTML and XHTML will just make sense to you. There is always more to learn, but this is just to get you started. Good Luck!