Web development

When can I use…by spec status!

An update to the “When can I use” page, now you can filter by spec status. This is helpful to only see support for full W3 recommendations, mostly stable specs, features still in flux or completely unofficial features.

I find it interesting to see that with IE8 Microsoft has focused largely on improving items under “candidate recommendation” status (primarily CSS 2.1), whereas most full recommendations (XHTML, SVG, MathML) get ignored. Working draft features seem to only be added when the spec is pretty clear cut, such as the querySelector one.


Operanoid web game for iPhone/iPod touch

Through a little tweaking, I have modified my Operanoid (arkanoid/breakout-like game) game to work in Mobile Safari for the iPhone/iPod touch. I suppose I could call it “iphonoid” or something like that, but as a token of my apprecation of the Opera web browser, I’ll leave it the way it is.

The game could use some improvement, and I may develop it a little further if there’s enough interest in it. For now, it’s functional and playable, and still also works in desktop browsers. Enjoy!

Web development

Direct URLs to browser support table selections

The “When can I use…” page now makes URLs based on selections. For example, I made the following links:

Just selecting the options at the top of the page will immediately generate the URL.

Web development

HTML 5 elements

While I started this blog with an HTML5 doctype, I have now also changed the appropriate divs to the more semantically-correct HTML5 elements, specifically header, footer, section, article, aside and nav.

Note that this practice is not recommended to people new to web design, large commercial websites, or…anyone else. The reason for this are the two browsers that have problems styling these elements, Internet Explorer (through IE8) and Firefox (2 and lower). Thus, I am using the document.createElement JavaScript hack for IE. Reliance on JavaScript for styling is reason #1 not to try this at home.

Firefox 2 treats unknown HTML elements as self-contained elements (like br and img), so the solution for that is to serve the page as XHTML, in which case it does work. That of course means making sure each page is valid XHTML, which is often a problem when dealing with HTML-enabled blog comments.

Since this can be a lot of work, and where failure results in unreadable pages for FF2 users, this is reason #2 not to use the new elements just yet. Also, since it has become apparent that XHTML (while having its uses) is not the true successor to HTML, it didn’t seem quite right to me to use this solution for this blog.

So what did I do? A find and replace to turn the elements back into divs with classes for browsers using Gecko 1.8.* or lower. This also means bloating up the CSS to deal with two versions of the site, though I plan on writing a replacement script for that too. The CSS file for these browsers is now auto-generated. Fun stuff, huh?

Many parts of HTML5 are usable without using these elements, and their current value on the web today is very low. Still, if you’re crazy and like living on the proverbial edge, you may want to give them a try today.