(X)HTML/CSS Geek Open Source

When Did Standards Compliance Become Only About Validation?

How has the message of the web standards community somehow been boiled down into a concentrate of your website must only validate to be standards compliant? Is this the result of a horrible game of web telephone? Sadly, this reduced definition of web standards makes it quite easy for someone to dismiss the positives of standards compliance. Why should making my site pass the muster of the W3C’s validators take precedence over creating new features for my audience/client/web application?

I’m currently in the process of evaluating open source ASP.NET content management systems. Important to me, of course, are adherence to web standards (coding and accessibility standards), cross-browser compatibility, simplicity/ease of use, etc. While, I was trying DotNetNuke (DNN) I became increasingly concerned about adherence to standards and cross-browser compatibility (among other things). I went searching on the forums for more information. I came upon a thread devoted to the topic of standards compliance in which a user inquires as to the timeline for web standards compliance in DNN. The replies were mixed. Some from users linking to tutorials on jumping through the hoops (sadly) necessary to make DNN produce valid XHTML code. Others, even more concerning, came from DNN team members. A few examples.

I will tell you that in all the work I get asked about, no one asks about CSS and XHTML compliancy, unless it’s a designer who went to do a multimedia course and was forced to some XHTML compliant site.

I’ve posted in forums before about my view on all this – and while I am no means an expert in every field, I’m looking at DNN right down the line from installing, hosting, advising, assisting, learning, you name it, and I think you need to also get this into perspective as well.

A final note, I am not saying it is not important to be XHTML compliant. I believe people should be able to use tabless or tabled designs, I personally have no preference for one or the other and have worked with both. I do think in terms of priorities, this is something I would consider to be lower on my list of must haves for the DotNetNuke framework.

However, IMHO the issue of accessibility compliance is much more important than xhtml compliance.

The above quotes, to me, show a serious misconception of web standards and the point of web standards — not to mention near contempt for standards compliance. To be fair, the users in the forum thread had themselves boiled standards down to code validation or css-based design versus table design. To me, web standards is about the entire approach to the architecture and design of a webpage/website. It’s not simply about creating XHTML that validates. It’s a way of thinking. Well-structured semantic code thoughtfully organized and designed leaves a smaller bandwidth fingerprint, loads faster for people on slower connections, and goes most of the way in making a website more accessible. A website that follows web standards is easier to maintain, and we all know maintenance is the real kicker in website development. I also think DNN missing the boat on web standards will cause them to lose the standards community (which isn’t small). As a standards-minded web developer, will I run the DNN obstacle course necessary to make a DNN website standards compliant (and for each upgrade after that)? Or would I turn to a product like Cuyahoga where the team is concerned with standards compliance and making it easy for developers to maintain website sanity?

Ultimately, this must be our own failure. How can the web standards message be improved? How can we fix the misconceptions that have propagated as a result of our own zealousness?


CSS-styled input buttons

There’s a little caveat in the specifications for HTML form elements that I was not aware of until I was trying to put together a bbCode helper functionality for a project at work. I wanted icons representing input buttons. Easy, I thought to myself, I’ll just make the buttons of type image. Wrong. The problem? Image button values are only symbolic. It seems that only the coordinates of the image button are passed along with the rest of the form information.

The problem becomes further exacerbated as this specification prevents values from being passed properly for JavaScript actions. And as my JavaScript Console filled up with "x element has no value" errors, I pondered the ludicrousness of this specification. I’m sure there’s a reason, but it’s still absurd.

I went back to the drawing board, convinced that I could make it work — somehow. Then, I thought, what if I styled the buttons with CSS background styling instead?

So, I did. And it turned out surprisingly well. I made a class for each button using the appropriate image as the background image. To get rid of the typical button look, I set the border to none, took out all margins and paddings, and set the height and width of the element to be the same size as the chosen icon.

View my demo

My work project has icons made by a graphic designer, so it’s much more polished, but one can still glean the general idea. Other options include changing the cursor style or adding a hover property (which, lord knows, won’t work in IE). For those more graphically talented (I am NOT a designer as you might have already figured out), perhaps JavaScript could be used to help simulate a button press by changing border colors, etc, when the element is clicked.

The code can all be viewed through the source of the demo. I know the method works in IE6 and Firefox on Win2k and WinXP. I believe it may not work in Camino. If anyone has ideas for improvements, I would love to hear them.