In a Class System, Can’t an ID Get a Fair Trial?

Jeremy Hilts, Web Developer

Sorry, this is not a Freudian debate on whether or not primal instincts have a place in modern society. That’s in the classroom down the hall…

In the world of XHTML and CSS, when should you use an ID and when should you use a class? I’ve heard this debate many times. In one particular instance, this decision is made for you: ASP.NET. If you’re using .NET, IDs are heavily used by the back end; if you need to style an element, it’s much easier to give it a class than it is to figure out what the ClientID will end up being.

Some believe that IDs should never be used when styling a website. Why would anyone disapprove of the use of IDs? The fact is: it’s just too specific. But wait! Isn’t it good to be specific?

Read More Comments


It’s Pink, Makes People Sneeze, and Reminds Me of Design

Jeremy Hilts, Web Developer

The recent Cherry Blossom Festival here in D.C. really got me thinking about aspects of good design. A couple of weekends ago, I dug out my trusty Canon SLR and went to town. Granted, the only thing that ever comes of my photography is some new wallpaper for my work computer; but the experience is always half the fun.

As far as design relates to my particular trade, there are usually two schools of thought that go into it: the front-end design and the back-end design. Either of these two things can make for a really good site, or a maintenance disaster. Among Q’s developers, there’s a lot of talk about a term that I’d never heard before I worked here: “technical debt.” The idea is, simply, that if it was a nightmare to make, it’ll probably be a nightmare to maintain.

There are a handful of XHTML/CSS “gurus” around the office, and technical debt often falls in as a topic for discussion – things like proper use of HTML tags, IDs vs. class names, and browser-specific selectors. I find that browser compatibility becomes less of an issue the better formed your XHTML markup and CSS is; however, certain browsers will always be a nightmare (*cough*IE6*cough*).

Read More Comments