W3C home > Mailing lists > Public > www-style@w3.org > November 2014

Re: [css-sizing] Intrinsic Sizes of Replaced Elements ignores 'width' and 'height'?

From: L. David Baron <dbaron@dbaron.org>
Date: Thu, 13 Nov 2014 11:32:46 -0800
To: Simon Sapin <simon.sapin@exyr.org>
Cc: www-style@w3.org
Message-ID: <20141113193246.GA25909@crum.dbaron.org>
On Thursday 2014-11-13 14:58 +0000, Simon Sapin wrote:
> The "Intrinsic Sizes of Replaced Elements" section of the ED
> currently reads:
> http://dev.w3.org/csswg/css-sizing/#replaced-intrinsic
> >For replaced elements, the min-content size and max-content size are
> >equivalent and correspond to the appropriate dimension of the
> >concrete object size returned by the default sizing algorithm
> >[CSS3-IMAGES] of the element, calculated with an unconstrained
> >specified size.
> css-images-3 defines "specified size" as given (for replaced
> elements) by the 'width' and 'height' properties.
> So css-sizing says to ignore these properties for the intrinsic size
> of an image? That sounds wrong.

I think that's right in general:  we want the concept of intrinsic
size not to be affected by height, width, etc., properties, so that
we can have values of those properties that specify the intrinsic

There's still a concept that css-sizing calls the min/max-content
size contribution that should be affected by these.

> I was looking for what should happen to images with the percentage
> specified width. A possible solution would be to do like for blocks:
> resolve the percentage if it is definite, or ignore it otherwise.
> However, browsers seem to interoperably do something more
> complicated, at least when tables are involved, and I don’t know
> what the algorithm is here.
> Compare the document below with and without the style="width: 50%".
> (The behavior without is explained by tables always getting at least
> their min-content size, even when the specified size is smaller, per
> "shrink-to-fit".)
> <table style="width: 200px">
> <td style="border: solid">
> <img style="width: 50%"
>      src="data:image/svg+xml,<svg width='1000'
>           xmlns='http://www.w3.org/2000/svg'/>">

In Gecko, the image has an intrinsic width of 1000px.  What differs
with and without the width:50px is its intrinsic width contribution
to its parent:  the presence of width: 50% makes that 0 for
min-width only, since the min-content contribution for any element
with a percentage width is 0.


π„ž   L. David Baron                         http://dbaron.org/   𝄂
𝄒   Mozilla                          https://www.mozilla.org/   𝄂
             Before I built a wall I'd ask to know
             What I was walling in or walling out,
             And to whom I was like to give offense.
               - Robert Frost, Mending Wall (1914)

Received on Thursday, 13 November 2014 19:33:17 UTC

This archive was generated by hypermail 2.3.1 : Monday, 2 May 2016 14:39:26 UTC