I’ve been teaching myself web design using just html, and it works, but I think I’m reaching the end of my patience. I spent all morning trying to make a simple image button with a mouseover state without using Javascript, and I still can’t get it to work, and now it looks like I might have to spend the rest of the weekend learning CSS. I thought maybe using some sort of GUI app in conjunction with HTML would be more efficient and less maddening, but I’m not sure I want to spring for Dreamweaver just yet.
Also, if you’re doing web design professionally, it’s probably a bad idea to learn Dreamweaver or any other WYSIWYG tool before learning HTML and CSS basics. You become dependent on the tools that way and unable to troubleshoot effectively or modify things without the tool’s help (and believe me, that happens very often).
With no prior experience, I learned 90% of what I know about CSS in one day using the free w3schools CSS reference; it’s wasn’t a big time investment and it’s certainly paid itself back a thousandfold since then.
For CSS, even though it’s ancient, there’s the freeware Balthisar Cascade. It’s good for beginners, although I usually just use it as kind of a quick reference these days. Only CSS level 2, though.