- From: Andrew Fedoniouk <news@terrainformatica.com>
- Date: Mon, 24 Nov 2008 14:17:04 -0800
- To: Christoph Päper <christoph.paeper@crissov.de>
- CC: www-style <www-style@w3.org>
Christoph Päper wrote:
>
> Andrew Fedoniouk:
>> Time to time I am getting feature request to provide "keep aspect
>> ratio" functionality in CSS.
>>
>> To declare function 'width(NN%)' that can be used as a value of
>> height, min-height, max-height CSS attributes.
>>
>> #my-golden-ratio {
>> width: 30%;
>> height: width(62%);
>> }
>
> Why would you make either width or height depend on the other when you
> really want to provide their ratio (or area, i.e. either the result of
> their division or their multiplication)?
>
> foo {
> ratio: calc(4/3); /* ignored if contradicting explicit width/height,
> because it is not needed then */
> width: 4cm;
> height: auto; /* -> 3cm */
> }
>
> foo {
> area: 12cm; /* _square_ centimetres actually, but we only need the
> scale,
> the power is encoded in the property */
> width: 4cm;
> height: auto; /* -> 3cm */
> }
>
1) The 'area' is a new attribute, so it needs to be specified how the
area interacts with other
attributes ("if contradicting..." part), in particular min/max-height.
2) The 'area' implies that you can have width of the element dependent
from its height:
foo {
ratio: calc(4/3);
height: 50%;
width: auto; /* ??? */
}
Dependency of width from height is highly not desirable in CSS layout
model. It is even not feasible
in most of the cases.
3) Author may want to say:
foo {
width: 4em;
min-height: width(100%);
height: 50%;
}
This works with the width() but not with the ratio.
If it counts: I have implemented the width() already - fits in CSS
without any conflicts.
--
Andrew Fedoniouk.
http://terrainformatica.com
Received on Monday, 24 November 2008 22:20:05 UTC