[whatwg] New attributes would degrade better than new elements

Jukka K. Korpela jkorpela at cs.tut.fi
Wed Oct 26 12:38:06 PDT 2011

New elements like <nav> and <footer> have the problem that some existing 
user agents don't recognize them, even for the purposes of styling. So 
if you want to use <nav>, then - unless you're using it for purely 
semantic reasons with no idea of styling - you need to use some special 
trick to make old browsers recognize it or assign your styles to some 
logically redundant <div> markup that you use in addition to <nav>.

Therefore, it would be much simpler, for compatibility with existing 
user agents, to use just <div type=nav> and <div type=footer>. Such 
elements can be styled at will, and if any browsers or search engines 
wish to recognize semantic markup, type=nav should not be a bigger 
problem than <nav>, rather smaller.

I understand that this should have been suggested years ago. But I 
didn't think of the issue, and it seems that neither did anyone else, 
aloud. And it's not too late, is it?

Nobody needs new elements with no required functionality, really. The 
idea of more compact markup is pointless. People don't read or write 
markup that much, and if they do, <div type=nav> is no less semantic 
than <nav>. But the latter has the serious drawback of being ignored by 
many relevant user agents.

It does not need to be the 'type' attribute of course. That attribute 
name is seriously overloaded, so 'kind' might be better. The important 
thing is to introduce an attribute different from 'class', which 
currently lets authors use a free naming space. We don't want to 
interfere with style sheets that might use this or that 'class' 
attribute value; instead, a new attribute name (defined as semantic, not 
presentational, but still useful for styling) is called for - rather 
than new element names, which are born homeless.

Yucca, http://www.cs.tut.fi/~jkorpela/

More information about the whatwg mailing list