I started at school, so forgive my primitive upbringing. I started with FrontPage and then moved to DreamWeaver, using the WYSIWYG interface to edit web pages and looking at the code to see what changed.
I started then using Notepad and began hating DreamWeaver and FrontPage, flirted with Nvu but couldn't get into it.
Now I use Notepad++, because it's tabbed so I don't have, say, 100 Notepad windows open, and it has a spell checker as a plugin, as well as a preview in browser function.
I learnt HTML, then CSS and a little JS together. Most of my knowledge has come from trial and error, but I've also looked at other website's source codes to see what's happening, and used templates to build on my knowledge. Forums and web sites have helped a great deal too, all found with good old Google.