In my opinion best way to learn is to start own project or website and try to make it from scratch. Look at others and try to make similar. It will take much time to read, find and code but it's very efficiency way.
i just started to work in dreamweaver and read a book about html, css, php, mysql and of course i used and some tutorials from the internet
for html we can use htmlcodetutrioal.com and for CSS use a book name as "Transcending CSS" is very easy to understand if you have a basic knowledge of HTML.
get some practices tutorials to learn html/css , especialy spliting psd or converting from psd to html/css it's very helpful, then you can fin a lot of web sites for web design that's offer a free tutorials
I threw myself in the deep end and just started freelancing. You learn good ways to pull out your hair pretty quickly. God bless Google and W3Schools.com. Wouldn't be here without them. I'd also start pulling apart basic sites and googling terms. You can find anything on the internet believe it or not. Another good way is just to start with TextEdit or Notepad and build a very basic site with inline CSS (google that) and just some simple divs (that too) with content and links. The building blocks of basically any website.
I like the book from Head First Labs - "HTML & XHTML with CSS". They have a unique way of teaching that keeps the reader entertained and active while learning "dry" subjects.
I like the "Head First" series. I checked this one out from my local library as soon as it hit the shelves. However, the one I keep pulling off the shelf is Dan Cederholm's "Bulletproof" series. I'd also be interested in hearing from anyone who has read his newest book "HandCrafted CSS"...
There are different ways to learn HTML and CSS, I learned it from w3schools.com. It has step by step tutorial.
Learning by example is a fast way. Watching and learning the html source code of the web2.0 sites, you'll benefit a lot . I learn html/css in this way .
Started 9 years ago with Front page and then moved to Dreamweaver. Of course, I was actually using tables and no CSS and my code was pretty "interesting" to say the least. Then I started understanding what makes the page work and the colours/styles appear. Got my nose into CSS after 2 years and then worked my way up. Once I understood how it all works, moving to div only designs wasn't hard either.
I learned HTML and CSS through w3schools.com... First of all learning the basics doesn't need more than a week, but you should implement your learning skill by editing a HTML template and playing around with the codes help you to learn better... After you learn something you can design a template in photoshop or download any free PSD template and can start coding them so that you will be perfect with them... It doesn't require not more than 15 days to learn them... Go to youtube and watch some video tutorials and you will learn them in no time...
I also learned through w3schools.com. Tech brought out a good point that you should start by editing a template. Personally, I would use Easy Web Content because it is easy to edit on there. To edit website pages correctly you need to learn the basics.
Yeah editing a template is great! Especially if you know the basics, it can start to help you get closer toward more advanced things. Like already stated, learning the basics doesn't take long. Another thing that helps me learn it to look at page sources. ALWAYS study your competitors code!