So, in the modern world, navigation in HTML often involves using lists. You know, the ol and ul elements. Most of the time, a list of navigation items have some sort of header. I have done several things in the past to make that header look different. That includes making it not part of the list, breaking specs and putting it outside of any li element, and using a class on the first element. I was thinking, we really need an lh element like the th that tables have. Its a handy way to have a heading that is still part of the document structure.
Well, on more than one occasion, I have found an element that I had forgotten or did not know existed. I recently started using the dl, dd, dt tag elements for example. So, I figured I would look to see if I had just missed it. I check DevGuru for the <lh>, but no luck. So, I ran a search on Yahoo!. Much to my surprise, there were many examples of this very element in use. I got excited. Maybe it was some deprecated HTML 2.0 element or something. Upon more research, I found that <lh> was part of the HTML 3.0 spec which expired. HTML 3.2 was later written and did not include<lh>. HTML 3.0 was never more than a draft. What a shame. This little element could be making life a lot easier in a CSS world.
There is some good news though. XHTML 2.0 will implement the <label> element for lists. And if you if do not obsess about your page validating, Firefox, IE, Safari and Opera all recognize the label element inside and ol or li already. If someone emails you telling you your page is not valid HTML, tell them you are ahead of your time.