- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Tue, 20 Jan 2009 14:59:21 -0500
- To: Giovanni Campagna <scampa.giovanni@gmail.com>
- CC: www-style@w3.org
Giovanni Campagna wrote: > I'm not sure what you mean here. How is this case different from, > say, absolute positioning? ::before works just fine with absolute > positioning: the before content is placed inside the positioned box. > > > That's what I mean: shouldn't the ::before be left in the normal float > and the DOM content positioned (this is a behaviour I saw in many > examples around the web, although never tested) Not as currently defined, no. > the example in the same spec, section 4.2 > > Er... why does it break that example, exactly? > > The example says that ::before applied a to a table-row elements creates > a new table cell (display: table-cell) No, the example says, and I quote: "An anonymous table cell box is generated around the '::before' content in this case, resulting in a 3×2 table." This happens because you have a "display:inline" child inside a "display:table-row" parent, and then CSS2.1 section 17.2.1 then applies. Specifically, item 7 in that section. > instead it creates a new inline > box (to notice this fact, try adding and removing "display: table-cell;" > to added content) That shouldn't affect the rendering in this case, generally speaking. It certainly doesn't over here (tested with a recent Firefox and Opera). -Boris
Received on Tuesday, 20 January 2009 20:00:05 UTC