Re: Proposal: content-vertical-alignment

Emrah BASKAYA wrote:
> Proposal: A new property that will allow any content in a given element to
> be centered vertically:
> content-vertical-align

I'd rather just "fix" the vertical margin computation to work 
exectly like the horizontal margin computation. (That is, I could 
just say
   div.special { margin: auto; margin-box-model: symmetric; }
to center div.special both horizontally and vertically.

I propose a new property
margin-box-model: [ horizontally-symmetric | symmetric ]
default value: horizontally-symmetric


horizontally-symmetric: same as now

symmetric: box model for horizontal margins (left and right) is kept 
as now, vertical margins are changed so that computation is similar 
to horizontal case.

Taking current specification:

10.3.3 [...]

Simply replace

"If both 'margin-left' and 'margin-right' are 'auto', their used 
values are equal. This horizontally centers the element with respect 
to the edges of the containing block."


"If both 'margin-top' and 'margin-bottom' are 'auto', their used 
values are equal. This vertically centers the element with respect 
to the edges of the containing block."

Apply similar changes to other parts of the spec.


> 1-) What the browser will do to achieve the 'impossible':
> [...]
>      c) Contents are laid out normally after padding-top, and readjusted
> once the element is closed
>            Pros: Users don't have to wait to see content
>            Cons: There is a single centering pop when closing tag is
> reached. Which is no more of a pop when an image whose dimesions are not
> given is loaded and the layout changes vastly, and much more violently
> then the centering pop, as contents move in all directions.
> [...]
> 3-) There are so many situations where the layout 'moves' like the loading
> of images with unknown dimensions is one prominent example, last time I
> checked, declaring the image size was not required. The last centering
> motion in method C is much easier on the eye, as the contents move only
> vertically, where as the image size push the text around in all directions.

+1 Saying that progressive rendering cannot be done isn't a big 
enough reason not to support this. An UA could even "slide" 
(animate) the content where it's supposed to be if a single "pop" is 
considered too rough. (Compare to "smooth scroll" feature provided 
by most modern UAs that also has supporters and haters.)

Received on Thursday, 9 June 2005 15:26:04 UTC