- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Mon, 3 Oct 2005 13:01:27 -0700
- To: "Dimitri Glazkov" <dimitri.glazkov@gmail.com>
- Cc: "Daniel Glazman" <daniel.glazman@disruptive-innovations.com>, "W3C CSS" <www-style@w3.org>
----- Original Message ----- From: "Dimitri Glazkov" <dimitri.glazkov@gmail.com> | On 10/3/05, Andrew Fedoniouk <news@terrainformatica.com> wrote: | > | > ----- Original Message ----- | > From: "Daniel Glazman" <daniel.glazman@disruptive-innovations.com> | > > | > > Dimitri Glazkov wrote: | > > | > >> There is not question they are both lists. However, the <select> list | > >> has inherent input semantics that are not present in a <ul>|<ol>. | > > | > > No, it has no "input semantics". It has a different input behavior, while | > > a <ul> has no input behavior by default. | > > | > | > Agree. | | Hmm... Maybe I didn't say it right, but what I meant is that "select" | communicates to the UA what are expected input choices are for a given | POST or GET query parameter. That's not something ordinary lists can | do. | | Is this what you mean by input behavior? I would think that term | should refer to how the actual UI element works in the browser. | As you know these two lists being placed in form will produce exactly the same GET/POST request to the server: <select size=3 name="list"> <option value="1" selected>One</option> <option value="2" >Two</option> <option value="3" >Three</option> </select> -and- <ul style="overflow:auto"> <li><input type=radio name="list" value="1" checked />One</li> <li><input type=radio name="list" value="2" />Two</li> <li><input type=radio name="list" value="3" />Three</li> <li> These lists differ only by presentational style and, again, very slightly by behavior ( e.g. second one enumerates items by tab, first one by arrow keys ). "...That's not something ordinary lists can do..." Imagine that you have something like this: ul { overflow:auto; } ul > li { behavior:radio; role:form-field; } <ul name="list"> <li value="1" checked>One</li> <li value="2">Two</li> <li value="3">Three</li> <li> Then on submit smart UA can enumerate all elements in the form(or other container) with role == "form-field" and send them to the server. Some comments on 'role'/'behavior' attributes: 'behavior' defines interaction style of the element. 'role' defines its purpose e.g. form-field. Another example: in-place WYSIWYG editing may require something like: <span style="behavior:checkbox; role:observer" name="strong-state" /> near some <htmlarea> to show strong/non-strong state at its caret position. Having role:observer defined will ommit sending its value to the server on Submit. Theoretically yours, Andrew Fedoniouk. http://terrainformatica.com
Received on Monday, 3 October 2005 20:01:53 UTC