the process

A lot of what is going on in this phase is basically synching with the 1.x changes to Firefox. The last release-quality version of LCD was during the 0.8 era. I maintained a working copy on the newer releases at home, but usually only hacked it up enough to get it working. The code was ugly, and often the look was not quite as polished as i’d like. The theme was pretty durable, and stood up to many updates to the browser through 1.0, but 1.5 brought a lot of big changes that weren’t quick fixes.

When major breakage is encountered it’s usually easiest for me to just copy the related CSS files from the release classic.jar. That gives me a working baseline. From there, it’s a lot of whittling unnecessary code and unstyling native-look properties to a bare-minimum stylesheet.

CSS often comes from Mozilla in no kind of order, so at some point i usually rearrange stylesheets so they make sense to me. That means grouping styles related to the same elements, usually with hierachical indentation, and then ordering things in some logical way—usually using the source XUL as a reference. DOMI helps here.

Even with DOMI there’s a lot of trial and error as i narrow in on the elements and selectors i need and want to style. Around this time—when i have a good grasp of what is doing what, and why i’m styling it a certain way—is when i add as much commenting as i can. Two years later i wish i would have been completely thorough, but the good bit of comments i did make have been priceless.

Eventually, i replace the entire stylesheet with original selectors and properties with consistent formatting that works for me. Often i find that most instance-specific styles are unnecessary for this theme, and i’ll remove just about all of the styling rules that were in the original Winstripe theme. It was a goal of mine to have solid global styles that could cascade down and work in as many situations as possible, relying on global element and class styles as much as possible. It’s also due to the clean, simple look i was going for.

  1. No comments yet.

  1. No trackbacks yet.