Re: Section 10.3.8 really needs to be fixed

David Hyatt wrote:
> 
> This compliance change we made in WebKit to match section 10.3.8 of 
> CSS2.1 continues to cause problems on the real-world Web.  We've gotten 
> numerous bugs on this issue, and I've brought this up before.
> 
> http://www.w3.org/TR/CSS21/visudet.html#abs-replaced-width
> 
> http://bugs.webkit.org/show_bug.cgi?id=16975
> 
> The spec is just plain wrong.  The results it gives don't match the 
> common sense rendering that Web site authors would expect for:
> 
> <iframe style="position:absolute;left:0;top:0;right:0;bottom:0"></iframe>
> 
> If I specify a top, bottom, right and left of 0, then why on earth 
> should the object's intrinsic width or height override?  It's completely 
> counter-intuitive that you can't use this pattern to stretch an iframe 
> or image in CSS2.1.

Testcases:
   http://fantasai.inkedblade.net/style/tests/issues/abspos-replaced-intrinsic-size
   http://fantasai.inkedblade.net/style/tests/issues/abspos-replaced-intrinsic-ratio
   http://fantasai.inkedblade.net/style/tests/issues/abspos-replaced-intrinsic-unsized

Results for Firefox 2:
   intrinsic-size:    image stretched to fill both directions
   intrinsic-ratio:   image set to 300px, height per ratio
   intrinsic-unsized: iframe stretched to fill both directions

Results for Firefox 3 (unreleased):
   intrinsic-size:    image kept at intrinsic size
   intrinsic-ratio:   image fills horizontally, height per ratio
   intrinsic-unsized: iframe set to 300px by 150px

Results for Opera 9.25:
   intrinsic-size:    image kept at intrinsic size
   intrinsic-ratio:   image fills horizontally, height per ratio
   intrinsic-unsized: iframe width at 300px, height fills vertically

Results for Opera 9.5 (unreleased, via Anne):
   intrinsic-size:    image kept at intrinsic size
   intrinsic-ratio:   image fills horizontally, height per ratio
   intrinsic-unsized: iframe set to 300px by 150px

I still need results for Safari and IE6/7.

~fantasai

Received on Tuesday, 19 February 2008 17:51:13 UTC