- From: David Hyatt <hyatt@apple.com>
- Date: Sun, 12 Apr 2009 18:17:32 -0500
- To: Andrew Fedoniouk <news@terrainformatica.com>
- Cc: robert@ocallahan.org, www-style <www-style@w3.org>
On Apr 12, 2009, at 6:11 PM, Andrew Fedoniouk wrote:
> Robert O'Callahan wrote:
>> On Mon, Apr 13, 2009 at 10:44 AM, Andrew Fedoniouk <news@terrainformatica.com
>> <mailto:news@terrainformatica.com>> wrote:
>> David Hyatt wrote:
>> On Apr 12, 2009, at 5:19 PM, Robert O'Callahan wrote:
>> That is not what I was asking for.
>> Suppose I have elements A and B with intrinsic widths
>> 100px
>> and 200px respectively. Suppose the container has width
>> 400px, and I want the extra space to be distributed
>> equally
>> to A and B, so they end up with widths 150px and 250px.
>> Your
>> proposal has no way to do this as far as I can tell, nor
>> is
>> it possible by setting min-widths or max-widths.
>> This is actually the default behaviour for XUL boxes, so
>> it
>> seems important to me that any flex-box-like spec be
>> able to
>> do it.
>> Yeah, I just brought this up in my last message as well. The
>> only way I can see to solve this for flex units is to actually
>> specify both values, e.g.,
>> width: (100px)1*
>> or something like that....
>> I am not sure I understand the problem.
>> If you will define:
>> #A { width:max-intrinsic; padding-left:1*; padding-right:1* }
>> #B { width:max-intrinsic; padding-left:1*; padding-right:1* }
>> than widths of *border* boxes will be set in the way you want.
>> Is this the answer or I've missed something?
>> That does not allow the children of A and B to occupy the extra
>> width. The extra width can only be white space.
>
> Ah, this.
>
> But why not to use
>
> #A { width:1*; }
> #B { width:2*; }
>
> if you just want to distribute their widths in 1:2 proportion?
>
> Or do you want weights to be dependent from intrinsic width of
> elements?
>
Independent. Yes. That's right.
See Zack's message. I think calc() could be a good solution to this
problem.
dave
Received on Sunday, 12 April 2009 23:18:14 UTC