W3C home > Mailing lists > Public > www-style@w3.org > February 2012

Re: [whatwg] <di>? Please?

From: Ian Hickson <ian@hixie.ch>
Date: Sat, 4 Feb 2012 04:05:12 +0000 (UTC)
To: Sean Hogan <shogun70@westnet.com.au>
cc: www-style@w3.org, Hugh Guiney <hugh.guiney@gmail.com>
Message-ID: <Pine.LNX.4.64.1202040354020.13116@ps20323.dreamhostps.com>
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

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:38:55 UTC