Posted on November 12th, 2010 by Jeff
As most people connected to the web have heard, HTML5 has dropped (although it’s still evolving). This has been a long time in coming, as the W3C has been working on this for what seems like ages. Anywho, it’s simpler, more semantic markup language than previous HTML versions as well as my norm (X)HTML. This means nothing to most people, but nit-picky folk like me it’s awesome.
Almost every element in HTML5 has a more in-depth semantic meaning than in previous iterations. So, what this means is that paired with high-quality content, a site built well in HTML5 is going to be super-sexy to search engines. Currently, most sites markup their content in <div>s, which are great for sectioning content, but have little semantic value to a search engine. Designers and developers [most often] do their best to assign meaning to each of these with ID and class names, but it’s still pretty much a crap shoot.
Plus, the way most sites are now, it’s almost more uncommon to run into a site that doesn’t have divitis rather than one that does. Basically, this means a lot of sites are coded with a bunch of unnecessary elements due to the fact that the designer or developer didn’t use the brilliant inheritance of CSS to define content areas, or the design was just so complex that it required extra elements. Either way, it’s a common problem, and it leads to code bloat; which in turn leads to a slower page load; which is bad for search engines. If your site loads poorly, even if you have great content, you’re going to have trouble ranking well for it with search engines nowadays.
Finally, if you’re anything like me, you love WordPress. I mean really love it. I haven’t met a job it wasn’t ready (maybe with a bit of tinkering) to handle, and to handle it well. So, working on a few side projects, I decided to add HTML5 into the mix. What I found was a mixed bag**. As of now, any HTML5 elements that I’d insert using the WordPress admin area (as a a true CMS) would get bungled on the output. So, I had to make a bit of a compromise, for any content that needed wrapping elements, I’d just use a <div> instead <article>, <section>, or any other new HTML5 element. With a good bit of planning and template structure, this didn’t amount to many of these older elements, so all in all it worked out pretty well.
Are you ready to mix HTML5 and client work? I think I’m going to start pushing this fairly soon, but with everything web-related, it all comes down to knowing your audience and weighing the pro’s and con’s. But, if you’re user base is heavy IE, especially heavy with IE6, I’d say it’s not the time yet.
* going being the optimal word there. ** there are plug-ins that can quasi-handle this conversion, but I always strive to reduce the amount of extra code & plug-ins used, so for me this was not an option.
Our quarterly email provides some great design + communications-related news and info. You can expect to hear from us once every month or so, but never more than that.