- From: James Elmore <James.Elmore@cox.net>
- Date: Fri, 22 Feb 2008 10:36:05 -0800
- To: Dmitry Turin <dev3os@narod.ru>
- Cc: www-style@w3.org
Dmitri,
On Feb 21, 2008, at 11:13 PM, Dmitry Turin wrote:
>
> James,
>
> JE> even if the behavioral part
> JE> isn't provided, the display part would be nice to have.'
>
> OK.
>
> JE> <style>
> JE> li[state=visible]:focus { visibility="hidden"; }
> JE> li[state=invisible]:focus { visibility="normal"; }
> JE> </style>
>
> Are you suggesting combination of two decisions:
> 1) some properties for visial view (by the way, let's summarize,
> what is the difference of tree itself from all other UL),
Properties for visual styles:
[NOTE: I will use folded/unfolded for consistency. Some people have
suggested collapsed, etc. Any set of words which conveys the states
needed is fine.]
List-style-type - add tree-view or tree-line or ?
I'm not sure this is required. If we define line properties,
icon properties, etc.,
any list type could have lines connecting peers and subs. (Do
not believe that I am
saying this is necessarily a good thing, but some authors might
want to have numbered
lists with tree lines, for example. I am just leaving an opening
for discussion and
the maximum possible utility of the final CSS styles.)
Line properties -
line visible/invisible (is this needed? use width=0,
style=plain, or color=background?)
line width
line style (none, plain, dashed, dotted, etc.)
line color
line joints/corners (straight, curved, separated, arrows?, etc.)
List icon properties -
three icons are necessary, to show folded, unfolded, and empty
sub-trees.
We could expand the list-style-* properties to allow three images.
list-style-image - If the list-style-image property order is: 1-
folded
2-unfolded 3-empty, then any missing icons will be ignored, and
look
reasonable. (If there is no 'folded' icon, whatever icon the
list-type
normally uses will be placed. This will be less clear than
different
icons for folded/empty/unfolded, but is still possible. The tree
lines
will help.)
list-style-position - needs to be able to place the folded/
unfolded/empty
icons/images inside, outside, or on the joint of the lines.
Or we could make different properties - list-icon and list-icon-
position
(I prefer this option, rather than overload and possibly make
more complex
the list-style-* properties.)
list-icon (folded unfolded empty)
Three urls could provide the UA with images for these states.
Missing icons
are ignored, as stated in 'list-style-image' above.
list-icon-position (outside/on/inside) Place the list-icon
outside/on/inside the
line join position. I will try and show SIMPLE examples, below.
([I] = icon)
|
outside: [I] |-----
|
inside: |-[I]-
|
on: [I]----
|
List layout properties -
List direction - This could be useful for all list-style-types. It
specifies the layout direction of a list. (For example, in English
most lists are laid out top-to-bottom, and the subtrees of a list are
indented to the right.) The default should be the same direction as
the language layout direction, but this may not be what the author
needs. Some lists grow more naturally from bottom-to-top, even in
English. Some lists (with narrow elements) would fit better in a left-
to-right layout, with the subtrees either above or below. With the
list-layout-direction properties, a designer could produce trees with
peers next to each other and subtrees below, or many other options.
Needed properties are:
list-layout-peers (tb, bt, lr, rl) - layout list items which are
peers from
top-to-bottom, etc.
list-layout-subs (lr, rl, tb, bt) - layout list items which are
sub-trees from
left-to-right, etc. (This is not clear - what I meant was that
the indents
of sub-trees for multiply nested lists will be left-to-right,
etc. If the
'peers' and 'subs' properties match, there may be extra space
between
parents and children, but no indents are (possibly) needed. See
'sub-offset')
Sub offset - What if the page author wants the subtrees to be at the
same indent as the parents? (Assuming there is some other way to
differentiate the parents from the children: list icons, outline
numbering, or text color, for example.) The author sets the offset
value, and sub-lists are offset by this amount, whether they are
offset left-to-right (indented), right-to-left (in English,
outdented?), top-to-bottom, or whatever. If the 'peers' and the
'subs' directions match, this offset provides a visual clue that the
different lists are a different levels of nesting.
Finally, an option to enable/disable the connection of lines to sub-
trees. This would allow authors/designers to have sub trees
'surrounded' by the lines of the parent trees. I see this option
being very useful when CSS finally specifies collapsing/expanding for
elements other than lists.
list-sub-connect- yes/no Draw list-tree-lines to sub-trees or
only to current list.
> 2) mandatory two lines, proposed by you
> ?
>
> What's about second decision itself, i would prefer some attribute
> for UL, which enter the same behaviour (what you are proposing in
> two lines).
What I was trying to suggest (and didn't do very well) was that a CSS
author could provide styles that told CSS what to do with folded/
unfolded lists when the user 'selects' one of the nodes. My (very
poor) example intended to say 'if the list element has a hidden sub-
list and the user selects it (with the mouse or the 'enter' key, for
example), then the sub-list should be displayed. If the list element
has displayed sub-list(s) and the user selects it, the sub-list
should be hidden.
>
>
> Dmitry Turin
> HTML6 (6. 5.4) http://html60.euro.ru
> SQL5 (5.11.3) http://sql50.euro.ru
> Unicode7 (7. 2.1) http://unicode70.euro.ru
> Computer2 (2. 0.2) http://computer20.euro.ru
>
>
I am still thinking about the behavioral properties for folding/
unfolding. If these are carefully considered and presented, they may
apply to more than just lists. Other responses in this thread, and a
spun-off thread about 'collapsing' show several people thinking about
how useful these behaviors can be.
To state my preferences: I believe that folding/unfolding behaviors
are clearly stylistic and need to be in CSS. I would like to have
these behaviors apply not only to lists (especially lists with tree-
lines), but to many other element types.
James Elmore
Received on Friday, 22 February 2008 18:36:30 UTC