Saturday, January 12, 2008

Review: RWcss by Larry Pollock

JailerJoe avatar
When Larry Pollock (aka Sundog on the RW forums) released RWcss last September I immediately purchased the book. Since hopping aboard the RapidWeaver train I’ve long wanted to learn some CSS and knowing Larry’s reputation as one of the CSS code gurus on the RapidWeaver forums, I figured I couldn’t go wrong.

Unfortunately, shortly after I bought the book, my non-RapidWeaver life intruded and I only had time to briefly skim the book. With the new year I made sort of a mini New Years resolution to thoroughly read RWcss and work through the tutorial (remember the promise I made to myself in my Videobox tutorial review?). Well I finally did it and here are my impressions of RWcss.

The book comes as a 73 page PDF which Larry has thoughtful laid out in such a manner that you can print and have it bound. I’m too cheap to do that and a PDF is just hunky-dory for me. When you unzip the package you’ll find four items:

  1. The RWcss Book PDF itself

  2. a Basic RapidWeaver Theme

  3. a CSS FIles folder (containing a 23 page PDF of basic CSS code, a Rich Text document of CSS used in the book which is especially good for copy and pasting along with the tutorial, and Rich Text document containing Greybox CSS)

  4. a “Demo & Tutorial Stuff” folder (containing a Rich Text document of the CSS used in the demo, the demo site RapidWeaver file and all the images used in the demo).

The book is divided into three parts: a basic information section, a full theme modification tutorial and a reference section choked full of links to external resources. Larry recommends that the reader read through the first part “several times” and this is good advice. I read through it a couple times and during the tutorial, I went back and reread parts. Surprisingly, it’s a pretty easy read. By that I mean, considering the content (CSS code) and it’s intended audience (CSS newbies like me), it was interesting and not too heavy. Larry has a nice writing style and I was able to follow along and understand what he was saying with very little effort.

In the first part of the book Larry lays the foundation for the tutorial by going over and explaining the basics of CSS. He explains how browsers interpret CSS and how RapidWeaver theme styles affect what is displayed. The rules for how styles “cascade” (CSS stands for "Cascading Style Sheets"), are laid out and Larry explains some of the terminology used when discussing CSS.

In this first section Larry also takes us through modifying a theme using example CSS code entered into the Custom CSS box in RapidWeaver’s Page Inspector. Many of his examples included screen shots graphically showing what the results look like. He also briefly touches on some of the features third party theme developers include with themes, like custom header options, as well as using RWMultitool.

Larry then goes on to briefly explain some common CSS terminology and corresponding “parts”. This is where it gets a bit deep and it was very helpful, as Larry suggested, to reread this part. He also touches on page specific CSS in this section as well as including a developer “tips” section. This last part was a particularly interesting read.

The next main section of the book is the tutorial. Larry lays it out in a fairly straight forward fashion that is quite easily to follow. For the most part you’re copying and pasting code from either the book itself or from the included CSS rtf to RapidWeaver’s Custom CSS panel. I’d suggest not bothering with copying from the book and just using the CSS rtf. The reason being that when you copy from the book, you’ll sometimes inadvertently (and unavoidably) copy some of the tutorial text.

For the most part, the tutorial went as intended. I did encounter a couple minor problems but nothing that prevented me from completing it. The first popped up (literally) when I went to load the RW tutorial file. I got an RW error pop up message that said “Could not find theme. Could not locate the theme...” I immediately emailed Larry and he responded within an hour. The fix was as easy as applying the Blog Pop duplicate theme that I’d created in the previous step to the blank RW demo site file.

The next minor problem I encountered was when I modified the QuickTime page. This step came late in the tutorial and Larry doesn’t go into a lot of detail on these later steps. Larry doesn't include a movie file for this page (I’m assuming for size reasons) so I just added my own in Edit view. I’ve never used a QuickTime page so was unprepared for the result: the movie completely took over the page, overlapping most of the navigation menu.

Lastly, because I was copying from the CSS rtf file, the instructions and accompanying screenshots in the book didn’t exactly follow the results I was getting. For example, in the book, Larry tells us to past this code into the Custom CSS panel:


#pageHeader {
background: #005400 url(assets/redrock_golf.jpg) no-repeat top
left;
}


Next he states to add this code to the #pageheader CSS:


height: 244px;


In the CSS rtf file, however, the height attribute was already included in the code. This really is no big deal and I immediately knew what was going on.

All in all it was a fun exercise. My tutorial site turned out pretty much how Larry illustrated. There were a couple minor bumps in the road but nothing that I couldn’t figure out by myself. Larry was quick to reply to my one support question and had I thought about it a little bit, I probably would’ve been able to find the solution on my own.

If I were to make one suggestion, it’d be for a more in depth discussion of CSS terminology and the corresponding mechanics. For example, I’m still not entirely sure what Selectors are and what they do, and Larry mentions divs but never really explained what they are and how they fit into this whole CSS thing. This, of course, might be beyond the scope of this book. I’m sure there’s a “CSS for Dummies” that I could pick up that delves more deeply into this sort of thing.

I highly recommend RWcss, especially if your a relative newbie to RW and are itching to modify themes a bit. You’re not going to completely learn CSS from this book and I’m sure this is not what Larry intends. What you are going to learn are some fundamentals and you’ll walk away with a good basic understanding of how to use CSS in the Custom CSS panel. If you’re like me, you’ll also probably walk away with a desire to learn more. I can’t wait for RWcss II (hint, hint Larry)! At $14.95 (USD) RWcss is a steal and you can get at Larry’s InsideRapidweaver.com website.
Editors note: A CSS selector is the html element that you are applying style to. In the case of:

#pageHeader {
background: #005400;
}
"#pageHeader" is the selector as it is the item in the html that you want to change the look of.

A "div" or <div> tag defines a division in the in the document that is a block level html element, meaning that by default, it exists on it's own in the document, occupying the full page width (unless we style it otherwise). It is a common element in RapidWeaver theme development used mainly for layout.

No comments: