Skip to main content
Topic: Semantics, HTML5, and other gruesomeness.  (Read 14079 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: Semantics, HTML5, and other gruesomeness.

Reply #30

Yeah. There's some good stuff in the spec that we can use. Things like the new input types are fine, because any browser that doesn't support them just falls back to rendering then as standard text inputs. That means we can get some nice little benefits for some users there. We can also clean up some crud like doctypes and css/js file calls, due to the neater syntax HTML5 allows there. I'm sure there's going to be other things we can use too.

Re the structural tags: the really problematic ones for a11y are article, section and aside. Those are problematic because they will break a11y for screen readers. Given that they provide absolutely no benefits to any other users, I think it would frankly be stupid to use them at all. So, we should avoid them like the plague.

Header, footer and nav are not so problematic. The only people they are likely to cause problems for are IE8 users with js disabled. The thing is though that, like the other elements, they do not actually provide an advantages. So, including them will break things badly for a very small group of users, without doing anything at all to help the others. Including them also requires us to feed a special js file to IE8 users, which is code we otherwise wouldn't need. So, I have to wonder why we would bother with those tags.

My 2c is that to give the most usability for the most people, and to keep our codebase as simple as possible, we just ignore most of the new tags. There's nothing forcing us to use them, and it seems that there are distinct practical advantages to not using them.

To get better a11y, we just have to use the ARIA stuff properly (which I had already started on anyway). To get better SEO, we use schema.

ETA: Ok, having formulated a strategy, at least for myself, I can get back to coding. :D What I am going to do is just stick to marking things up basically in XHTML Transitional style. I'll ignore most HTML5 tags, and just stick with what will work for everyone.

If I'm working on a template and see a new tag where I think it's inappropriate, I'll just remove it and substitute something else.
Last Edit: July 01, 2013, 06:03:45 pm by Antechinus
Master of Expletives: Now with improved family f@&king friendliness! :D

Sources code: making easy front end changes difficult since 1873. :P