- From: Giovanni Campagna <scampa.giovanni@gmail.com>
- Date: Mon, 29 Jun 2009 16:29:59 +0200
- To: David Hyatt <hyatt@apple.com>
- Cc: robert@ocallahan.org, "L. David Baron" <dbaron@dbaron.org>, www-style@w3.org
2009/6/29 David Hyatt <hyatt@apple.com>: > On Jun 28, 2009, at 11:12 PM, Robert O'Callahan wrote: > > On Sat, Jun 27, 2009 at 11:44 AM, L. David Baron <dbaron@dbaron.org> wrote: >> >> I have another question about transitions that I think ought to be >> addressed in the spec ( http://dev.w3.org/csswg/css3-transitions/ ), >> though in this case I'm not exactly sure how it should be addressed >> in the spec. >> >> This is the question of whether transition should be associated with >> a change in style on a content node, or a change in style on a >> rendering object (a box). Either solution poses a bunch of >> problems. >> >> If transitions are associated with the style on an element (DOM >> node), then we have problems in any case where a content node has >> more than one style. The main case of this I can think of is >> pseudo-elements. For example, I think it's hard to do something >> sensible with: >> p { color: gray; } >> p::first-line { color: black; } >> p:hover { color: blue; } >> p:hover::first-line { color: aqua; } >> a { transition: 3s color; } >> then it's really not clear what the transition on the anchor should >> be when the p goes into the :hover state (either when the anchor is >> split between the first line and the second, or when the anchor is >> entirely in the first line). > > How about: if an element has a first-line or first-letter rule setting a > property on it, then transitions on that property are disabled for the > element and all its descendants. > > I'm not understanding why transitions can't be made to work on first-line > and first-letter? > dave > (hyatt@apple.com) > Because in that case you would have two starting values and two ending values, one for the part of element that inherits from ::first-line, the other from the part of element that inherits from the element directly, whereas transitions expect one. The same happens with ::first-letter, although it is rare, because most often the pseudo-element is contained completely inside one element. You need punctuation across elements to get this problem. If the innermost approach is used for text-level pseudo-element (including ::first-letter but also ::selection and possibly others), this is a non-issue, since nothing can inherit from such pseudo-elements. Giovanni
Received on Monday, 29 June 2009 14:30:39 UTC