[Bug 18346] Desire to define "Block container element"

https://www.w3.org/Bugs/Public/show_bug.cgi?id=18346

--- Comment #1 from Anton P <antonsforums@yahoo.co.uk> 2012-07-21 10:47:33 UTC ---
Proposal B:

  # 9.2 Controlling box generation
  #
  # The following sections describe the types of boxes that may be
  # generated in CSS 2.1. A box's type affects, in part, its behavior
  # in the visual formatting model. The 'display' property, described
  # below, specifies a box's type.
  #
  # <ins>Each _block-level element_<link to 9.2.1>, inline block,
  # inline table and table cell generates a *principal box* that contains
  # descendant boxes and generated content and is also the box involved
  # in any positioning scheme. Some block-level elements may generate
  # additional boxes in addition to the principal box: 'list-item'
  # elements. These additional boxes are placed with respect to the
  # principal box.</ins>
  #
  # 9.2.1 Block-level elements and block boxes
  #
  # *Block-level elements* are those elements of the source document
  # that are formatted visually as blocks (e.g., paragraphs). The
  # following values of the 'display' property make an element
  # block-level: 'block', 'list-item', and 'table'.
  #
  # <del>Block-level boxes are boxes that participate in a _block
  # formatting context_. Each block-level element generates a principal
  # block-level box that contains descendant boxes and generated
  # content and is also the box involved in any positioning scheme.
  # Some block-level elements may generate additional boxes in
  # addition to the principal box: 'list-item' elements. These
  # additional boxes are placed with respect to the principal box.</del>
  #
  # <ins>The principal box of a block-level element is a block-level
  # box. *Block-level boxes* are boxes that participate in a _block
  # formatting context_.</ins> Except for table boxes, which are
  # described in a later chapter, and <ins>the principal box of</ins>
  # replaced elements, a block-level box is also a block container box.
  # A *block container box* either contains only block-level boxes or
  # establishes an _inline formatting context_<link to 9.4.2> and thus
  # contains only _inline-level boxes_<link to 9.2.2>.  <del>Not all
  # block container boxes are block-level boxes: non-replaced inline
  # blocks and non-replaced table cells are block containers but not
  # block-level boxes.</del> Block-level boxes that are also block
  # containers are called block boxes.
  #
  # <ins>*Block container elements* are elements whose principal box
  # is a block container box. The following values of the
  # 'display' property make an element a block container: 'block',
  # 'list-item', 'table', 'inline-block', 'inline-table'.  Non-replaced
  # inline blocks and non-replaced table cells are block containers but
  # are not block-level.</ins>
  #
  # The three terms "block-level box," "block container box," and
  # "block box" are sometimes abbreviated as "block" where unambiguous. 


Note: the changes introduced in this proposal are limited to shuffling a couple
of existing sentences around and introducing two new concepts:

(i) The definition of "principal block-level box" is extended to "principal
box" for a wider range of elements (inline block, inline table and table cell
in addition to block-level elements).  This has no effect on the rest of the
spec, since the only cases where the principal box is referred to is in the
context of block-level elements/boxes.

(ii) The term "block container element" is introduced to mean an element whose
principal box is a block container box, ie a block, list-item, inline-block,
table, inline-table or table-cell in CSS21.


Note: all instances in the spec where "block container(s)" is used without the
word "box" in a context where one expects elements to be referred to, and all
instances where "block container element(s)" is already used, remain correct
with this proposal.


Note: The part about list items and their additional box has been moved to 9.2.
 Whilst not strictly necessary for this proposal since that sentence is
currently about block-level elements, the new location permits a further
clarification that inline-level tables also generate an additional box, which
aids proposals for Bug 17782.


Proposal: http://lists.w3.org/Archives/Public/www-style/2012Jul/0415.html

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Saturday, 21 July 2012 10:47:34 UTC