UKJester's "Web Standards" Rant
What are web standards?Web standards is a general term associated with a set of best practices for designing websites. The idea is to create standard languages with standard (but ever expanding) feature sets so a website looks the same no matter what device you view it on.
Why do we need web standards?Web standards have many advantages for web designers and end users alike.
Web designers benefit from only having to write a website once, and not having to create different versions for different users browsers.
End users benefit from having a website that has the same look and features whether they view it on their home PC, or their tablet or their smart phone.
Who makes the web standards?The W3C is the body responsible for creating and maintaining web standards.
So what is the rant about web standards?My rant is the fact that we are working towards a set of standards but we haven't actually reached a set of standards.
This means I do things like, for example, change from writing websites in HTML to writing them in XHTML because it seemed that was best choice for the job, the way forward. Now the XHTML line of languages has been discontinued and incorporated into, you guessed it, HTML.
Okay, this example isn't too bad as you can write HTML5 in the standard HTML format, or the much stricter XHTML format, so I can continue with the practices I have been building up over the last few years.
A better example involves browser inconsistencies that I have briefly mentioned elsewhere but will explain fully now.
Say I have a login form somewhere and it has a 'submit' button on it. I can choose the 'type' of this button from either submit, button or image so I choose 'image' to get away from the boring grey buttons. I create a nice image for the button that matches the rest of my site perfectly.
I test this in Google Chrome and it works well, as expected. The same thing happens with Firefox 3.
I test it in Internet Explorer and when I click the submit button, nothing happens. This is because IE doesn't recognise the image button as a submit button so it doesn't send the form data when clicked. I assume this is just because IE is crap and add a page explaining IE users can't login and they should change to a better browser.
I upgrade my browser to Firefox 5, and test the form and when I click the submit button, nothing happens. This is because Firefox 4+ doesn't send the button 'name' when clicked and just sends the x and y co-ordinates, so I can't check if the button has been clicked.
After doing some research I discovered the best way is to change the button 'type' back to 'submit' and use CSS to style it nicely. The problem with this is that the current CSS standards don't allow many cool styling features. An upcoming version of CSS (that is actually already partly supported by most modern browsers) allows for gradient backgrounds and rounded corners. If I add these features, I can make the buttons look great (in most modern browsers), which removes lots of now redundant images, speeding up my page loading times. The problem with this is that my pages will not be valid CSS as I am using features that are not (yet) in the current standards.