[whatwg] Web Forms 2.0 Feedback

Matthew Raymond mattraymond at earthlink.net
Wed Jan 5 06:04:31 PST 2005

Matthew Thomas wrote:
> On 9 Dec, 2004, at 4:43 AM, Matthew Raymond wrote:
>>Matthew Thomas wrote:
>>><select id="wiblet" initialsort="flavor">
>>>  <shead>
>>>    <sh data="Name">
>>   I notice you have a lot of elements there that imitate the elements 
>>for tables. Why not just use <table> as a basis for this instead of 
>>| <table>
>>|  <colgroup>
>>|   <col usetree id="col_name"/>
> Because, while more elegant, that doesn't have "some sort of 
> backwards-compatibility story". I click on it, it does nothing.

      I've actually adopted most of your new <select> markup in another
post, so we no longer have any fundamental disagreement over this
markup. (Although I still have a few issues with <shead> and whether or
not it should be inside <select>.)

>>>Even if goodwill was irrelevant, if you made HTML semantically 
>>>complete enough to drop <div>, I guarantee you would have added too 
>>>many block elements for authors to choose the correct one anything 
>>>like most of the time. <div>, <b>, <i>, <sup>, <sub>, and <span> 
>>>might be presentational tofu, but they keep HTML from being too 
>>>complex, and that's important.
>>   The elements <sup> and <sub> are not entire presentational. For 
>>example, how do you represent a chemical formula in HTML? If a title 
>>has a power at the end, how do you indicate that? Granted, they have a 
>>presentational component to them, but that presentation itself has a 
>>semantic meaning.

      (Note that the above reply construction glosses over the fact that 
I completely don't understand getting rid of <div> and <span>, unless of
course you're suggesting that they be replaced with a display-free
element: <styleme class="myStyle">The text I want to style.</styleme>

    This is, to a small extent, valid, and would probably make a mildly 
good argument for dropping either <div> or <span>, although I would 
still oppose that.)

> Exactly the same applies to <b> and <i> as to <sup> and <sub>. They're 
> usually used to mean *something*, but a computer can't tell what it is.
> <http://mpt.net.nz/archive/2004/05/02/b-and-i>
> <http://mpt.net.nz/archive/2004/05/09/semantic>

      Your argument, as presented in these links, is a little soft. If 
one wants something to be presented using bold or italic, you can use a 
<span> and CSS. And since you state yourself that <b> and <i> can have 
their presentations neutralized by CSS, while at the same time having no 
real semantic meaning, you really can't argue that they're better 
solutions than <span>. Better to depreciate <b> and <i> and let people 
resurrect them with XBL later.

      Furthermore, I don't buy your argument that <sup> and <sub> are
just as presentational as <b>/<i>. For instance, I once had to implement
a fake tooltip system in VB using a rich text control because the
standard tooltips couldn't display the chemical formulas that my
employer wanted displayed. Some text information requires <sup> and
<sub> for you to be able effectively communicate certain information.
Example (which hopefully isn't a violation of my NDA):

| CH<sub>3</sub>COONa3H<sub>2</sub>O

     Without the subscript, you have this:


     Now is that three Sodium atoms or is it a trihydrate? Now think 
about this in terms of simple math that you don't need MathML for, or 
titles with superscripts, like "Homer^3" or "Cube^2". Granted, it's a 
form of PRESENTATION that has meaning, but the difference is that the 
formatting happens WITHIN the word or title, and in many cases, such as 
the example above, it becomes harder to determine exactly what the name 
or word is if you don't have the proper styling.

     Now, keeping this in mind, can you give me any title or word that 
requires bold or italic in the middle of it? You can make the case that 
whole words might require italic or bold, but when was the last time 
you've seen a partial italic or bold? (Now that I think about, I may 
have seen it once or twice, but it's extremely uncommon.)

     There is an argument for <b> and <i>, though: For user agents that 
don't support CSS, taking these elements away leaves you without some 
very fundamental presentational tools. I think this is a very valid 
argument, but it's easy to get carried away with it by using it to 
justify elements like <font>.

More information about the whatwg mailing list