Mon 22 Aug
All of the blood, sweat and tears that I put into designing that form in XHTML and CSS last week is coming to some good. After much continued fussing, I finally got it to render reliably and consistently across several major Web browsers, so at the very least, my labor satisfied the challenge at hand. But, having heard with near unanimity the general frustration that people feel about forms, I thought I’d do the civic thing and release a genericized version of my work — and let others freely borrow, steal and/or adapt it for their own needs.
Cutting to the chase: you can view and download the results here. It’s a fairly straightforward piece of work with most (but not all) of the common form elements complying with my layout intentions with a reasonable degree of faithfulness. I tested it in every browser at my disposal and it looks passable in all of them — some better than others, of course. Unsurprisingly, the design suffers a bit at the hands of Internet Explorer, but that browser’s rendition of it is still acceptable, at least to me — I couldn’t justify investing more time into getting it to right.
Just be forewarned: I make no claims that this is a definitive example of a form, by any means. I did my level best at simplifying both the markup and the style rules, but by necessity my work reflects the particular requirements that I was faced with. So it’s reasonable to expect that this particular solution will not prove useful to every project to which it’s applied — I can’t guarantee that you won’t encounter problems when working with it, is what I’m sayin’. In truth, my theory is that every unique form requires its own particular finessing in both XHTML and CSS, so creating a ‘universal’ set for every situation seems unrealistic.
That said, I would be more than delighted if someone took what I’ve done here and improved upon it such that it’s more readily adaptable for other people’s needs. Lots of my code can be cleaned up and further simplified, I know, and I’d be happy to incorporate any such changes into a new version. If you undertake a major overhaul of it, you don’t even need to credit me — just tell me where I can download and use it for myself, because it would save me a lot of heartache the next time I have to design one of these things.