- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Wed, 09 Jul 2008 11:26:47 -0700
- To: robert@ocallahan.org
- CC: "Ph. Wittenbergh" <jk7r-obt@asahi-net.or.jp>, W3C Style List <www-style@w3.org>
Robert O'Callahan wrote: > On Wed, Jul 9, 2008 at 3:27 PM, Andrew Fedoniouk > <news@terrainformatica.com <mailto:news@terrainformatica.com>> wrote: > > That is what I would like to clarify - how exactly it should be > rendered. > > > I think it's clear that according to the spec it should be rendered > the way Gecko and Webkit render it. > > If you're suggesting that the spec should be changed --- this has been > specified and interoperably implemented in Gecko and Webkit for years, > so I think you'd need a pretty strong argument. Personally it feels > unnatural to me to render an element and its descendants as a single > composition group but carve out an exception for descendants that > happen to be out-of-flow. (Although I'm not actually sure what you're > proposing, since there might be descendants which are out-of-flow but > still have the element as their containing block ancestor.) Opacity is an attribute of some layer. Element and its in-flow descendants is a layer. absolute positioned elements establish their own layers. It appears that Opera: 1) draws element and only in-flow children on the offscreen buffer (layer) 2) each absolute positioned element - descendant of transparent parent - inherits value of opacity and draws itself on separate offscreen buffer (layer). 3) these buffers are blended separately with respect of z-order. That appear as the only correct way of doing this. FF and WebKit share the same error. Take a look on these samples: http://terrainformatica.com/w3/opacity.htm http://terrainformatica.com/w3/no-opacity.htm These two files are the same except of transparency. Note that FF and WebKit simply ignore value of z-index when opacity is applied. That is what I would like to clarify. Opacity of what? > > Also note that if the author really wants an out-of-flow element to be > composited seperately they can usually move it in the document outside > of the container with 'opacity' and give it its own 'opacity' to > achieve that. In this case we shall define something like "rendering is undefined" for the case when transparent element has not in-flow children. -- Andrew Fedoniouk. http://terrainformatica.com
Received on Wednesday, 9 July 2008 18:27:34 UTC