[css3-box] Comments for new WD for the Basic Box Model

Comments about Sections 1 - 5.

Section 2, paragraph 2:

"CSS describes how each element and each string of text is laid out  
by transforming the document tree into a tree of rectangular boxes,  
whose size and position depends on their properties. There are block- 
level boxes, line boxes and inline-level boxes. A block-level box is  
like a paragraph. A line box is like a line of text. And inline-level  
boxes are like words inside a line."

Change the first sentence to: "CSS describes how each element and  
each string of text is laid out by transforming the document tree  
into a tree of displayable, styled boxes, whose sizes and positions  
depend on the place(s) where they will be displayed and their CSS and  
source document properties." [Do boxes have to be rectangular?]

Change the last three sentences to: "A paragraph is an example of a  
block-level box, a line of text is an example of a line box, and  
words inside a line of text are examples of inline-level boxes."

Example I
Might improve if it showed how the HTML converted to what might be  
displayed, surrounded by labeled boxes.

Figure 2
Has no Right label on the side. This may be overkill, but the current  
one lacks symmetry.

Text after Figure 2
"A box is horizontal if its ‘block-progression’ property is ‘tb’,  
otherwise it is vertical."

This is not clear. A horizontal box might be one wider than it is  
tall (i.e., landscape); a vertical one might be in portrait position.  
Also, if the block-progression is 'tb', the boxes would fill from top  
to bottom and the box might be vertical (filling in the vertical  
direction). So what, exactly does 'horizontal' or 'vertical' mean in  
this context?

Section 4.1, 'display' property, paragraph starting with "The  
computed value ...", down to the next sub-section.
The explanation is way too complex, interlacing explanations of  
'specified' vs. 'computed' values, 'display', 'float', and 'position'  
styles. (I recognize that most of this is lifted from CSS 2.1, where  
it is also convoluted.) Would it be possible to state this in some  
clearer form? As a possible example:

Other style properties may affect the final value of the display  
property. If a block has a specified display property value of  
'inline-table', the final (computed) value of the display property  
will be 'table' if:
  1. The block is the root element, or
  2. The 'position' property is 'absolute' or 'fixed', or
  3. The 'float' property is something other than 'none' ('left' or  

The same rules will result in a computed value of 'block' for the  
following 'display' property values: inline, run-in, table-row-group,  
table-column, table-column-group, table-header-group, table-footer- 
group, table-row, table-cell, table-caption, and inline-block. Other  
'display' property values remain unaffected by these conditions.

I'm still working on sections 6 - 15, and hope to post them soon

James Elmore

Received on Wednesday, 15 August 2007 23:08:02 UTC