I am an avid fan of valid code… but I am not hindered by an obsession to limit functionality based on validity. So if there is some really cool user need, function, navigation etc that will enhance the visitor’s experience, then hell yes I will use it…. Even if it’s not “valid” code. Face it we have a job to do, deliver a great website to our users. Having said that, Google’s recent announcement that the validity of website code as a “Quality Signal” is no surprise to me. I am not however moved enough to dump some really cool… yet invalid code on our websites.
This, like many things, requires a balance. So my theory has always been this…
When you create pages, use the W3C validation tool to check your work. My personal expectation is to set out to fix every error and warning, but not at a loss of display, usability or general “coolness” of the page. Most times upon validation you will find a bunch of simple errors which are easily repaired. Issues such as unclosed tags, unescaped ampersands and such are quickly and easily fixed! In fixing these you learn to create better code in the first place… and the task gets easier and easier.
Big errors such are missing divs, missing alts, titles and such DO affect the page’s usability and ability to be displayed and crawled correctly. These things should always be fixed. Again, don’t get obsessive… Fix what you can, leave the rest and move on. If you think I’m kidding, checkout the 359 Errors, 293 warning(s) on Google’s post page above for this announcement. And yes… most of these should be repaired as they are easy or affect usability.