June 28, 2005
After a short absence due to being buried under, I'm back to say... I finally finished the beta version of my first all-CSS design for a client. Yay! I'm very proud and tired. Here are my initial thoughts about building a "real" CSS site for the first time.
- Whoever said working with CSS is as easy as working with tables is a big, fat liar. It is not easier. It is frustrating, aggravating, infuriating and despair-inducing.
- It does get a little easier.
- I'm still having a lot of trouble with multiple selectors. Is it .boxtop h2.boxhead? Or .boxtop .boxhead h2? Or .boxhead h2 .boxtop? Sometimes I go through a dozen variations before I hit on the right one. (See #12.)
- It's a good idea to arrange style rules according to their type: lists, headers, forms, layout, text, etc. I started out grouping them by page--all the homepage rules together, all the bio rules together, news page, etc.--thinking that would make it easier to find them. But I was doing a site with over 40 unique pages, all needing at least some special style rules. By the time I was almost done, I couldn't remember what was on the bio pages. I ended up repeating rules because I forgot I'd written one exactly like it for an earlier page. Top Style's Style Sweeper helped with my goofs, and once I regrouped them by type, it was much easier to find them.
- I am in love with float. I'll give you this: Creating lists and floating them is easier than using a table.
- This cascading business will be the death of me. I worked for hours on one element, but no matter how I wrote and rewrote my style rule, the element refused to be styled correctly. I was pulling my hair out until I realized that a much earlier rule was affecting it. Sigh.
- Sometimes I wasn't sure if an image was presentational or not. For instance, I often used closeups of people to "humanize" a page. So is that window dressing or content? I went with content, mostly out of exhaustion.
- To me, tables still seem concrete and visual--I mean, I can visualize them. CSS seems abstract and hard to envision. You can't just plunk an element down. Too many other things influence it. This is just because I've gotten in the habit of thinking one way, and not being used to thinking another. I think.
- I was so excited when the homepage validated. I almost put a "Validated CSS and XHTML" link on the page. Then I started thinking about down the road. My client intends to maintain the site themselves. What if the staff doesn't use correct XHTML? Someone will click on the link and get a big "SITE DOESN'T VALIDATE." How embarrassing. So I left it off. I'd love to know how other people handle this.
- I was able to do things with CSS I only dreamed about. Positioning things exactly where you want them to go is heavenly and miraculous and wonderful and... It's just so damned hard figuring out how to write the style code to do it. But once you do get the code right, wow!, it's fantastic.
- I am resisting <em>s. I know I shouldn't. I know I'm robbing my site of one of the biggest assets of CSS. But I can't make myself give up the control of pxs. I wish I had time to build an experimental page with them. Maybe I'd feel better about them once I saw them in action. Unfortunately, I'm a working girl. The next site is breathing down my neck.
- I need to reread all my CSS books. I'm serious. I read them as I was learning, as I was just starting out with CSS. Now I've gotten my feet wet, I've coded a little, I'm feeling more comfortable with some things. And now I need to go back and read every damn thing again. Because it's impossible to remember everything about CSS. I know I'll learn a whole bunch of new stuff that escaped me at the first reading.
- I'm getting way too old to pull all nighters.