What’s the best book for learning Cascading Style Sheets?

I just finished The Book of CSS3: A Developer’s Guide to the Future of Web Design and it gives a good survey of the capabilities of CSS3, e.g., a 1980s TV station-style flying logo in three dimensions (and, more usefully, capabilities for telling the browser to lay text out in multiple columns; see http://thebookofcss3.com/resources/chapter-7/ for examples (don’t seem to work that well in Chrome; the columns don’t resize when I adjust the browser window size)). It would also be a good reference. But the examples in the book seem contrived and overall I think it would be a lot easier to learn CSS3 with a book arranged project-by-project. Has anyone seen a good case study-oriented book on CSS? Or perhaps a Web site.

13 thoughts on “What’s the best book for learning Cascading Style Sheets?

  1. A guy in my group read through a fair amount of this:
    http://www.amazon.com/CSS-Missing-David-Sawyer-McFarland/dp/0596802447/ref=pd_sim_b_31
    And found it quite interesting. If I recall correctly, the book uses the same “website” to build upon itself.

    A List Apart and Eric Meyer are probably the top tier websites to learn about specifics. (For instance, A List Apart will do a fairly decent multi-part tutorial building up a blog-like page that’ll go from boring to snazzier looking and tell you why stuff can look weird at certain steps along the way…. also, no flying TVs.)

    Also, those columns aren’t going to expand, the source for screen.css (link within view source) are all given fixed widths. The grids don’t look like anything I’ve ever seen.

  2. I learned everything I know about CSS from sites like HTML Dog (http://www.htmldog.com/) and W3Schools (http://www.w3schools.com/). Eventually once I felt I’d plateaued as far as online resources could take me, I bought this book (which is now a bit out of date):

    http://www.wrox.com/WileyCDA/WroxTitle/Professional-CSS-Cascading-Style-Sheets-for-Web-Design.productCd-0764588338.html

    In general the book did not contain much new knowledge, but the examples did harp on me to use certain good practices, avoid CSS class-itis (too many unnecessary classes), avoid excessive markup, etc. These details are important and generally poorly understood (if you’ve become very competent in HTML/CSS, you see bad practices in the source of most websites).

    I can’t recommend a more current book because I haven’t read one, but W3Schools is (from what I remember then and as far as I can tell now) both comprehensive and up to date with CSS3. Good luck.

  3. Great and timely question, Philip. Having dabbled in HTML, CSS and web design some years ago, I’ve recently been trying to get back up to speed by “starting from scratch.” In other words, how does a beginner learn HTML5, CSS3 and JavaScript (jquery?) in a way that is practical and applicable right away? I’ve yet to find the answer.

    Here are two links I’ve used, but I still don’t have an approach that is as straight forward as what you’re asking for:

    http://diveintohtml5.org/

    http://www.html5readiness.com/

  4. +1 for Dan Cederholm. His books are not comprehensive, but they are carefully edited to show the idioms he recommends you actually use (in his words, the “bulletproof” ones). I appreciate the service he provides with this editing, because the CSS spec is huge, but most of it isn’t something you want to use right now, because its either too old or too new. Of course, if you want to know either old tricks or new cutting edge snazzy stuff, you’ll have to look elsewhere.

  5. I can recommend “The Essential Guide to CSS and HTML Web Design” by Craig Grannell: http://tinyurl.com/5vk4o7j

    It doesn’t reflect the latest additions – published 2007 – but it is very helpful and aims to make you productive and to solve your problems. Check out the reviews on Amazon, which give a good idea of what to expect.

    Disclaimer: I edited it. Nevertheless, I think it is one of the best computing books I have ever read.

  6. Designing With Web Standards by Jeffrey Zeldman. A lot of how, and a lot of why as well. I learned a lot.

  7. In the late 90’s I learned HTML completely on my own during college by looking at sites I liked and viewing the source to see how to do it. Today, even when I teach the occasional university web design class, I’m rarely impressed by the books available and often end up teaching without a textbook.

    I learn best by practical example. Show me something useful and step me through how it was built. You see this done sometimes with really simple blog or brochure-ware sites, but rarely are there any good case study examples on how to build a complete corporate website page at a professional level.

    1) WaSP has some great online course material if you learn well in a structured academic style. http://interact.webstandards.org/curriculum/

    2) As mentioned above, w3schools.com is great as a reference. The examples are simple, but usually easy to understand and apply.

    3) A List Apart has a lots of great articles that get into depth. http://www.alistapart.com/topics/topic/css/

    Learning CSS coming from older HTML with tables can be really frustrating because things never seem to work the way you want. A table just makes sense, but floats and various browser hacks to build columns just seem backwards. Using a CSS framework can help – they handle the browser compatibility for you and provide a standard way to code layouts. Blueprintcss.org and yaml.de/en are two common ones worth checking out.

Comments are closed.