Re: [whatwg] <di>? Please?

On Sat, 4 Feb 2012, Sean Hogan wrote:
> > 
> > This isn't a formal proposal, but you get the idea. If we solve this 
> > problem, the need for<di> completely goes away, but more importantly, 
> > so does the need for a huge number of<div>s.
> 
> Could you provide examples for how this suggestion--

Note that I explicitly said that I wasn't making a specific proposal. My 
point is that this is the kind of thing that once solved in CSS solves a 
whole ton of other things in CSS.


> --solves styling specific name-value groups within the <dl>, e.g.
> 
>     dl > li.hidden { display: none; }


   dl::magicpseudo(dt.hidden magic dd) { display: none; }


>     dl > li.closed > dd { display: none; }

Since the pseudo here would introduce a box in the middle of the render 
tree, it seems to make sense to me to also make it introduce a scope for 
selectors, as in:

   dl::magic(dt...dd) > dt.closed ~ dd { display: none; }

or introducing another kind of magic syntax that lets you do optional 
sequences in selectors using the syntax (selector)suffix, where suffix is 
one of ?, +, *, or :count(n,m), with the same meanings as in regexps (the 
last one having the same meaning as {n,m}) one could do:

   dl > dt.closed (+ dt)* (+ dd)* + dd { display: none; }

(Though really, how often do you have a collapsible dt/dd group that has 
more than one dt or dd?)


>     dl > li::even { background-color: #ccc; }

On the basis that the magic pseudo is an actual thing, you could see 
something like this working:

   dl::magicthingy(dt..dd):nth-child(even) { ... }

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Saturday, 4 February 2012 04:05:36 UTC