|
27 | 27 |
|
28 | 28 | <h1>CSS Multi-column Layout Module</h1> |
29 | 29 |
|
30 | | - <h2 class="no-num no-toc" id=w3c-working>Editor's Draft 9 August 2010</h2> |
| 30 | + <h2 class="no-num no-toc" id=w3c-working>Editor's Draft 21 October 2010</h2> |
31 | 31 |
|
32 | 32 | <dl> |
33 | 33 | <dt>This version: |
34 | 34 |
|
35 | 35 | <dd> |
36 | | - <!--<a href="http://www.w3.org/TR/2010/CR-css3-multicol-20100809">http://www.w3.org/TR/2010/ED-css3-multicol-20100809</a>--> |
| 36 | + <!--<a href="http://www.w3.org/TR/2010/CR-css3-multicol-20101021">http://www.w3.org/TR/2010/ED-css3-multicol-20101021</a>--> |
37 | 37 | <a |
38 | 38 | href="http://dev.w3.org/csswg/css3-multicol/">http://dev.w3.org/csswg/css3-multicol/</a> |
39 | 39 |
|
@@ -272,16 +272,17 @@ <h2 id=introduction><span class=secno>1. </span>Introduction</h2> |
272 | 272 | either, or both, properties in one declaration. |
273 | 273 |
|
274 | 274 | <div class=example> |
275 | | - <p>In these examples, the number of columes, the width of columns, and |
276 | | - both the number and widths are set: |
| 275 | + <p>In these examples, the number of columns, the width of columns, and |
| 276 | + both the number and width are set, respectively: |
277 | 277 |
|
278 | 278 | <pre> |
279 | 279 | body { columns: 2 } |
280 | 280 | body { columns: 12em } |
281 | 281 | body { columns: 2 12em } |
282 | 282 | </pre> |
283 | 283 |
|
284 | | - <p>Setting both properties rarely makes sense, as described below. |
| 284 | + <p>However, as described below, setting both the width and number of |
| 285 | + columns rarely makes sense. |
285 | 286 | </div> |
286 | 287 |
|
287 | 288 | <p>Another group of properties introduced in this module describe gaps and |
@@ -387,12 +388,12 @@ <h2 id=the-multi-column-model><span class=secno>2. </span>The multi-column |
387 | 388 | direction of the multicol element. The <em>column width</em> is the length |
388 | 389 | of the column box in the inline direction. The <em>column height</em> is |
389 | 390 | the length of the column box in the block direction. All column boxes in a |
390 | | - multi-column element have the same column width, and all column boxes in a |
391 | | - row have the same column height. Within each row in the multi-column |
392 | | - element, adjacent column boxes are separated by a <em>column gap</em>, |
393 | | - which may contain a <em>column rule</em>. All column gaps in the same row |
394 | | - are equal. All column rules in the same row are also equal, if they |
395 | | - appear; column rules only appear between columns that both have content. |
| 391 | + row have the same column width, and all column boxes in a row have the |
| 392 | + same column height. Within each row in the multi-column element, adjacent |
| 393 | + column boxes are separated by a <em>column gap</em>, which may contain a |
| 394 | + <em>column rule</em>. All column gaps in the same row are equal. All |
| 395 | + column rules in the same row are also equal, if they appear; column rules |
| 396 | + only appear between columns that both have content. |
396 | 397 |
|
397 | 398 | <p>In the simplest case a multicol element will contain only one row of |
398 | 399 | columns, and the height of each column will be equivalent to the used |
@@ -1031,11 +1032,12 @@ <h2 id=column-gaps-and-rules><span class=secno>4. </span>Column gaps and |
1031 | 1032 | endpoints at opposing content edges of the multicol element. Column rules |
1032 | 1033 | do not take up space. That is, the presence or thickness of a column rule |
1033 | 1034 | will not alter the placement of anything else. If a column rule is wider |
1034 | | - than its gap, the column rule will overlap adjacent column boxes. Column |
1035 | | - rules are painted just above the background of the multicol element. This |
1036 | | - allows child elements with ‘<code |
1037 | | - class=property>z-index</code>’ values to be on top of column rules. |
1038 | | - Column rules are only drawn between two columns that both have content. |
| 1035 | + than its gap, the column rule will overlap adjacent column boxes, and |
| 1036 | + possibly extend outside the box of the multicol element. Column rules are |
| 1037 | + painted just above the background of the multicol element. This allows |
| 1038 | + child elements with ‘<code class=property>z-index</code>’ |
| 1039 | + values to be on top of column rules. Column rules are only drawn between |
| 1040 | + two columns that both have content. |
1039 | 1041 |
|
1040 | 1042 | <h3 id=column-gap><span class=secno>4.1. </span>‘<a |
1041 | 1043 | href="#column-gap0"><code class=property>column-gap</code></a>’</h3> |
@@ -1614,7 +1616,7 @@ <h3 id=column-span><span class=secno>6.1. </span>‘<a |
1614 | 1616 | <tr> |
1615 | 1617 | <td><em>Applies to:</em> |
1616 | 1618 |
|
1617 | | - <td>static, non-floating elements |
| 1619 | + <td>static, non-floating elements, |
1618 | 1620 |
|
1619 | 1621 | <tr> |
1620 | 1622 | <td><em>Inherited:</em> |
@@ -1655,6 +1657,10 @@ <h3 id=column-span><span class=secno>6.1. </span>‘<a |
1655 | 1657 | <p>An element that spans more than one column is called a <dfn |
1656 | 1658 | id=spanning-element>spanning element</dfn>. |
1657 | 1659 |
|
| 1660 | + <p>This property has no effect on elements that no not fit entirely within |
| 1661 | + the multicol element. Also, if a setting on this property pushes the |
| 1662 | + element outside a multicol element, this property will have no effect. |
| 1663 | + |
1658 | 1664 | <div class=example> |
1659 | 1665 | <p>In this example, an <code>h2</code> element has been added to the |
1660 | 1666 | sample document after the first sentence in the fourth alphabet (i.e., |
@@ -1721,8 +1727,8 @@ <h2 id=filling-columns><span class=secno>7. </span>Filling columns</h2> |
1721 | 1727 | <p>There are two strategies for filling columns: columns can either be |
1722 | 1728 | balanced, or not. If columns are balanced, UAs should minimize the |
1723 | 1729 | variation in column length. Otherwise, columns are filled sequentially and |
1724 | | - will therefore end up having different lengths. In any case, the user |
1725 | | - agent should try to honor the ‘<code |
| 1730 | + some columns may end up partially filled, or with no content at all. In |
| 1731 | + any case, the user agent should try to honor the ‘<code |
1726 | 1732 | class=property>widows</code>’ and ‘<code |
1727 | 1733 | class=property>orphans</code>’ properties. |
1728 | 1734 |
|
@@ -1850,24 +1856,25 @@ <h3 id=overflow-inside-multicol-elements><span class=secno>8.1. |
1850 | 1856 | <h3 id=overflow-outside-multicol-elements><span class=secno>8.2. |
1851 | 1857 | </span>Overflow outside multicol elements</h3> |
1852 | 1858 |
|
1853 | | - <p>Content that extend outside column boxes at the edges of the |
1854 | | - multi-column element is clipped according to the ‘<code |
| 1859 | + <p>Content and column rules that extend outside column boxes at the edges |
| 1860 | + of the multi-column element is clipped according to the ‘<code |
1855 | 1861 | class=property>overflow</code>’ property. |
1856 | 1862 |
|
1857 | 1863 | <p>A multicol element can have more columns than it has room for due to: |
1858 | 1864 |
|
1859 | 1865 | <ul> |
1860 | | - <li>Constrained column height. A declaration that constrains the column |
1861 | | - height (e.g., using ‘<code class=property>height</code>’) |
1862 | | - must be honored, if possible. In paged media, the column height is |
1863 | | - constrained by the size of the page. |
| 1866 | + <li>a declaration that constrains the column height (e.g., using |
| 1867 | + ‘<code class=property>height</code>’ or ‘<code |
| 1868 | + class=property>max-height</code>’). In this case, additional column |
| 1869 | + boxes are created in the inline direction |
1864 | 1870 |
|
1865 | | - <li>Explicit column breaks. Explicit column breaks may create more columns |
1866 | | - than there is room for inside the multicol element. |
1867 | | - </ul> |
| 1871 | + <li>the size of the page. In this case, additional column boxes are moved |
| 1872 | + to the next page(s). |
1868 | 1873 |
|
1869 | | - <p>In continuous media, columns that do not fit within the multicol element |
1870 | | - are added in the inline direction. |
| 1874 | + <li>explicit column breaks. In this case, additional column boxes are |
| 1875 | + created in the inline direction for continous media, and additional |
| 1876 | + column boxes are moved to the next page(s) for paged media. |
| 1877 | + </ul> |
1871 | 1878 |
|
1872 | 1879 | <div class=example> |
1873 | 1880 | <p>In this example, the height of the multi-column element has been |
@@ -1969,9 +1976,6 @@ <h3 id=overflow-outside-multicol-elements><span class=secno>8.2. |
1969 | 1976 | </div> |
1970 | 1977 | </div> |
1971 | 1978 |
|
1972 | | - <p>In paged media, columns that do not fit within the page are moved to the |
1973 | | - next page. |
1974 | | - |
1975 | 1979 | <div class=example> |
1976 | 1980 | <p>In this example, explicit column breaks are generated after paragraphs: |
1977 | 1981 |
|
@@ -2104,7 +2108,7 @@ <h3 id=cr-exit-criteria><span class=secno>9.1. </span>CR exit criteria</h3> |
2104 | 2108 | <h2 class=no-num id=acknowledgments>Acknowledgments</h2> |
2105 | 2109 |
|
2106 | 2110 | <p>This document is based on several older proposals and comments on older |
2107 | | - proposals. Contributors include Øyvind Stenhaug, Sylvain Galineau, |
| 2111 | + proposals. Contributors include Øyvind Stenhaug, Sylvain Galineau, |
2108 | 2112 | Giovanni Campagna, David Hyatt, David Singer, David Woolley, Elika Etemad, |
2109 | 2113 | Björn Höhrmann, Joost de Valk, Peter-Paul Koch, Till Halbach, |
2110 | 2114 | Cédric Savarese, Andy Clarke, Robert O'Callahan, Markus Mielke, |
@@ -2406,7 +2410,7 @@ <h2 class=no-num id=property-index>Property index</h2> |
2406 | 2410 |
|
2407 | 2411 | <td>1 |
2408 | 2412 |
|
2409 | | - <td>static, non-floating elements |
| 2413 | + <td>static, non-floating elements, |
2410 | 2414 |
|
2411 | 2415 | <td>no |
2412 | 2416 |
|
|
0 commit comments