I am a total beginner at web design and had a few questions. If anyone could help me out it would be greatly appreciated as I am trying to learn the craft of coding.
1- Do I need to learn HTML before I can start learning CSS?
2- Can anyone suggest any good books to start off with?
For anyone new to web design who thinks they may be writing a lot of code, or who thinks they may also get into programming as well (at the very least, you’re going to run into javascript), you may want ton consider the time investment of learning a very Good Text Editor. If you spend the time learning an excellent text editor, you will save a LOT more time later on. Syntax highlighting is just something everyone does. I’m talking about Good Editors.
A Good Editor lets you use regular expressions for search-and-replace (like, how about changing ALL your href’s to various other urls in one go, even though there are over a hundred of them?). A Good Editor lets you diff two (or more) files to point out what’s different (this is great for debugging, whether it’s just HTML or CSS, or programs). A Good Editor can reset your indenting while you add/remove parents for you, in any manner you wish. A Good Editor starts you out slow because you have to learn how to use it, and then, after you’re past the basics, it makes you faster than anyone rodent-dependent, even if they can type faster than you : )
I’d just take up Eclipse SDK to help learn not only code, but also to learn how to properly structure your code. Also, Eclipse SDK can be updated, so it could be up to standards pretty quickly.
You should know HTML first (in my opinion) and get the basic knowledge out of the way (though the basics is all you need)
HTML and CSs can be learned consecutively though :). It’s a steep learning curve for CSS but everything is quite logical if you think about it (except for a few cross browser issues+bugs :))
I learned HTML/CSS at the same time but it if I had it to do over again I would start with HTML only.
If you don’t know the basics of how html elements work it just causes confusion. You won’t which elements are block or inline by default and it could get you into a bad habit of wanting to wrap a div around everything. That is a common problem I see with newbs. They want to wrap divs around a UL and other block elements that could have just been styled on their own.
The SitePoint Reference is a good resource for you to learn from, it has live playground for some things where you can make edits on the fly. You can view the online files or purchase the book if you choose. I think Ryan linked to it in his post.
HTML is the foundation of a webpage, so you need to learn that first. CSS is a very different technology, but there’s nothing for it to do until you have an HTML page to style.
IMO There’s one book that clearly the best choice for you to start with. I like Ian Lloyd’s book…
Build Your Own Web Site The Right Way Using HTML & CSS, 2nd Edition
It literally teaches you everything you need to know about HTML and gets you a great foot in the door to CSS. There are other great books I use in CSS and design, but for starting out, nothing else even comes close.
Dreamweaver is actually a program for “not coding”
You should steer clear of it until you understand all the basics otherwise you will never learn how to code. Once you have mastered the basics then you won’t need it anyway (unless like me you just use it as a code editor at which it is very good but very over-priced to use just for editing code).
There is no substitute for writing your own code as it is the only way you will learn. Once you’ve learned then you can take short cuts but not until then. Just get a good free editor (like notepad++) and away you go
If you do a search on the forums you will find some threads about DW and other software: