- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Sun, 2 Oct 2005 21:24:34 -0700
- To: "Matthew Raymond" <mattraymond@earthlink.net>
- Cc: "W3C CSS" <www-style@w3.org>
From: "Matthew Raymond" <mattraymond@earthlink.net> >> >> Couple of examples: >> >> http://terrainformatica.com/hsmile/images/controls2.jpg >> http://terrainformatica.com/hsmile/images/hsmileselect.png >> >> Again <select> here is just a div with overflow:auto >> correspondent behavior knows of how to select >> contained <option>s. >> >> And more: >> <select> >> <ul> >> <li style="role:option">one</li> >> <li style="role:option">two</li> >> <li><option>two</option></li> >> </ul> >> </select> > > This is all kinds of corrupt. First of all, the unordered list markup > serves no semantic purpose. The <select> is already a list of options to > select from, so I can only assume that you're using the list markup for > list-like presentation. This is clearly the domain of CSS, and could > probably be achieved with just the <option> elements using existing CSS > selectors and properties. Matthew, you are in captivity of stereotypes. Forget about legacy browsers and HTML specification for the sec. selects, set of radios and checkboxes are all lists semantically speaking :) select is a list of radios, multi-select is a list of checkboxes . They differ only by style of presentation (nb!) and very slightly by behavior. Semanticly (sic!) <select> or set of radios or set of checkboxes are just lists: <ul style="presentation-and-behavior"> <li>one</li> <li>two</li> <li>three</li> </ul> Having this it would be possible for example to better style inputs for different media, e.g. for printing. Having this also it would be possible to say <ul style="presentation-and-behavior"> <li>one</li> <li>node <ul>....</ul> </li> <li>three</li> </ul> to represent hierarchical or groupped lists, etc. > > Secondly, you're using CSS, which is supposed to be exclusively > presentational, as a way of assigning semantics to specific markup. This > is totally backwards. The markup holds the semantics, and CSS holds > presentation. For that matter, a CSS property is supposed to be a > _hint_, and therefore may be disregarded by the user agent. As a result, > your list item markup isn't even guaranteed to behave like an option, > even if the user agent is fully compliant with CSS. > [skipped] Style definition is presentational entity - no doubts here. In contrary, style selector as an entity is universal thing - by adding 'behavior' to the list of attributes we are not changing presentational nature of CSS - we just reuse existing CSS selector mechanism. Imagine that you have such 'behaviors' as a system of ready to use lego elements. Then you can construct not only existing widget set of HTML but something more rich in order of magnitude. Theoretically :) Andrew Fedoniouk. http://terrainformatica.com
Received on Monday, 3 October 2005 04:25:00 UTC