- From: Anne van Kesteren (fora) <fora@annevankesteren.nl>
- Date: Mon, 19 Apr 2004 08:03:33 +0200
- To: Ian Hickson <ian@hixie.ch>
- Cc: www-style@w3.org
> Unfortunately (the awkward bit) this breaks inheritance (the inheritance > has to be done in the original location, so things won't look like they > belong where they were moved to). And it can require an excessive number > of pseudo-elements. I thought the amount of psuedo-elements was going to be limited in CSS3? > For example, this is the mess you would need to wrap related <dt>s and > <dd>s into one box with a border using this: > > dt { content: none; } > dt::after { content: contents; flow: terms; } > dd { flow: definitions; } > dd + dt, dl::after { > display: block; > content: flow(terms) flow(definitions); > border: solid; > } > > I wish there was a simpler way. In my opinion, there are two problem with this example: 1. I don't understand it directly. 2. I'm not an average CSS user. By one, CSS is supposed to be a simple syntax which can be easily learned. This certainly isn't an easy example. Why does the first rule, 'dt{content:none;}' exist? From where I see it, it is overwritten by the fourth declaration, 'dd + dt'. Further, how what exactly are the contents of 'dt::after', the contents of the DT element? (Doesn't make sense to me, you could have applied 'flow:terms;' directly to DT if that was the case.) The fourth declaration seems to be a bit strange, you apply the same content to multple elements? And since CSS 2.1 is already very difficult to understand for a lot of people I would suggest not to include this in the final draft. Maybe css3-positioning can come up with something better for displaying the document in a different "order" than one would expect from the structure. By point two, I think I am, since I, most of the time, answer question at forums, I don't ask. -- Anne van Kesteren <http://annevankesteren.nl/>
Received on Monday, 19 April 2004 02:05:37 UTC