W3C home > Mailing lists > Public > www-style@w3.org > March 2011

Re: [CSS21] Issue 283 - undefining size of replaced elements with intrinsic ratio only

From: Bert Bos <bert@w3.org>
Date: Sat, 26 Mar 2011 14:46:22 +0100
Message-Id: <DC6EFE6C-E5F3-496D-B357-542D1F59C8ED@w3.org>
To: W3C style mailing list mailing list <www-style@w3.org>
On Mar 22, 2011, at 23:24, fantasai wrote:

> Proposal:
> 
> In 10.3.2
>  # If 'height' and 'width' both have computed values of 'auto' and the element
>  # has an intrinsic ratio but no intrinsic height or width and the containing
>  # block's width does not itself depend on the replaced element's width, then
>  # the used value of 'width' is calculated from the constraint equation used
>  # for block-level, non-replaced elements in normal flow.
> 
> Replace "is calculated" with
>  | is undefined. However it is suggested that it be calculated.

Our resolution says to make the size undefined of replaced elements that have an intrinsic ratio but neither an intrinsic width nor an intrinsic height (and make the current rule a level-3 feature). But the replacement above only makes the size undefined *if* the elements are inside a containing block with a known width. If they are, e.g., in a float with auto width, the catch-all rule later in the section applies and the width becomes 300 px, which is far from undefined.

How about:

    If 'height' and 'width' both have computed values of 'auto'
    and the element has an intrinsic ratio but no intrinsic
    height or width, <del>and</del> <ins>then the used value of
    'width' is undefined in CSS 2.1. However, it is suggested
    that, if</ins> the containing block's width does not
    itself depend on the replaced element's width, then the used
    value of 'width' is calculated from the constraint equation
    used for block-level, non-replaced elements in normal flow.

> In 10.6.2
>  # Otherwise, if 'height' has a computed value of 'auto', and the element has
>  # an intrinsic ratio then the used value of 'height' is: (used width) / (intrinsic ratio)
> 
> Replace "is: (used width) / (intrinsic ratio)" with
>  | is undefined. However it is suggested that it be calculated from the used
>  | width and intrinsic ratio so that the aspect ratio is preserved.

This change seems unnecessary. Our resolution only says to make the size undefined, not the ratio. (It seems to me that many browsers, while disagreeing on the width and height, *do* agree on the aspect ratio.)



Bert
-- 
  Bert Bos                                ( W 3 C ) http://www.w3.org/
  http://www.w3.org/people/bos                               W3C/ERCIM
  bert@w3.org                             2004 Rt des Lucioles / BP 93
  +33 (0)4 92 38 76 92            06902 Sophia Antipolis Cedex, France
Received on Saturday, 26 March 2011 13:46:51 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:38 GMT