Re: [CSS3] Flexible Flow Module, proposal.

On Apr 12, 2009, at 5:44 PM, Andrew Fedoniouk 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?
>

Flexing padding won't flex the content width of the boxes, which can  
be very relevant.  If width is a value other than intrinsic for example.

#A { width: 200px; box-flex: 1; }

The object would first lay out at 200px and then it would flex to fill  
the remaining space.  If the box's max-intrinsic width is larger than  
200px, then flexing will enable more content to fit in the larger  
available width after flexing.

dave
(hyatt@apple.com)

Received on Sunday, 12 April 2009 22:50:36 UTC