|
23 | 23 |
|
24 | 24 | <!--logo--> |
25 | 25 |
|
| 26 | +<!-- |
| 27 | +
|
| 28 | + - RESOLVED: page-break-before, page-break-after: column to force column breaks, |
| 29 | + other values apply to column breaking as well as pages |
| 30 | +
|
| 31 | + - RESOLVED: howcome to clearly distinguish GCPM features that are moving forward, |
| 32 | + then propose publishing a new WD |
| 33 | +
|
| 34 | + - RESOLVED: New syntax is image-resolution: normal | [ <dpi> || auto ] |
| 35 | + RATIONALE: Removes unused combinations and unnecessary comma |
| 36 | +
|
| 37 | + - RESOLVED: Replace image-resolution: auto; with image-resolution: from-image; |
| 38 | + RATIONALE: 'auto' vs. 'normal' is hard to understand. ('normal' is 1 pixel == 1px) |
| 39 | +
|
| 40 | + - RESOLVED: URLs inside functional notation where URL is expected should be able |
| 41 | + to take either url() or bare strings (like @import), preference for |
| 42 | + examples is bare strings. |
| 43 | +
|
| 44 | + - Discussed removing 'background-image-resolution' in favor of various options. |
| 45 | + So far idea is that 'image-resolution' applies to all images and we will |
| 46 | + introduce functional notation in the future to allow setting resolution on a |
| 47 | + per-image basis. |
| 48 | +
|
| 49 | + - howcome to prepare css3-multicol for Last Call publication; expecting a long |
| 50 | + (8 weeks) LC period to elicit comments and clarifications |
| 51 | +
|
| 52 | + - Margins of multicol element no longer collapse with first/last children |
| 53 | +
|
| 54 | +--> |
| 55 | + |
26 | 56 | <h1>CSS3 module: Multi-column layout</h1> |
27 | 57 |
|
28 | 58 | <h2 class="no-num no-toc" id="w3c-working">[LONGSTATUS] [DATE]</h2> |
@@ -1040,102 +1070,38 @@ <h2>Column breaks</h2> |
1040 | 1070 | <p>When content is laid out in multiple columns, the user agent must |
1041 | 1071 | determine where column breaks are placed. The problem of breaking |
1042 | 1072 | content into columns is similar to breaking content into pages. CSS3 |
1043 | | -Paged Media [[!CSS3PAGE]] describes rules for breaking content into |
1044 | | -pages. This specification prescribes the same rules for column breaks, |
1045 | | -with the following differences: |
1046 | | - |
1047 | | -<ul> |
1048 | | - |
1049 | | -<li>The properties for indicating column breaks are |
1050 | | -'column-break-before' and 'column-break-after' (instead of |
1051 | | -'page-break-before' and 'page-break-after'). The 'page-break-inside' |
1052 | | -property can be used to indicate that a column break should be avoided |
1053 | | -inside the element. |
| 1073 | +Paged Media [[!CSS3PAGE]] describes properties and rules for breaking |
| 1074 | +content into pages, and the same properties and rules are used for |
| 1075 | +breaking columns. |
1054 | 1076 |
|
1055 | | -<li>A page break will always cause a column break; the opposite is not |
1056 | | -the case. Consequently, when both a page break and a column break is |
1057 | | -specified, a page break will occur. |
1058 | | - |
1059 | | -</ul> |
1060 | | - |
1061 | | -<p class="issue">Should we reuse 'page-break-before' and |
1062 | | -'page-break-after' instead of creating two new properties? A new |
1063 | | -keyword ''column'' would be added to these properties to force column |
1064 | | -breaks. |
1065 | | - |
1066 | | -<p>Also, margins will be set to zero around column breaks, just like |
1067 | | -for page breaks. |
| 1077 | +<p>A new keyword, ''column'' is introduced on 'page-break-before' and |
| 1078 | +'page-break-after'. This keyword forces a column before or after the |
| 1079 | +element, just like the ''always'' keyword forces page breaks. |
1068 | 1080 |
|
| 1081 | +<div class="example"> |
1069 | 1082 |
|
1070 | | -<h3>'column-break-before'</h3> |
1071 | | - |
1072 | | -<table class=propdef> |
1073 | | - <tr> |
1074 | | - <td><em>Name:</em> |
1075 | | - <td><dfn>column-break-before</dfn> |
1076 | | - <tr> |
1077 | | - <td><em>Value:</em> |
1078 | | - <td>auto | always | avoid |
1079 | | - <tr> |
1080 | | - <td><em>Initial:</em> |
1081 | | - <td>auto |
1082 | | - <tr> |
1083 | | - <td><em>Applies to:</em> |
1084 | | - <td>block-level elements |
1085 | | - <tr> |
1086 | | - <td><em>Inherited:</em> |
1087 | | - <td>no |
1088 | | - <tr> |
1089 | | - <td><em>Percentages:</em> |
1090 | | - <td>N/A |
1091 | | - <tr> |
1092 | | - <td><em>Media:</em> |
1093 | | - <td>visual |
1094 | | - <tr> |
1095 | | - <td><em>Computed value:</em> |
1096 | | - <td>as specified |
1097 | | -</table> |
| 1083 | +<p>In this example, forced column breaks appear before <code>h2</code> |
| 1084 | +elements and after <code>img</code> elements: |
1098 | 1085 |
|
| 1086 | +<pre> |
| 1087 | +.multicol { colum-width: 8em } |
| 1088 | +.multicol h2 { page-break-before: column } |
| 1089 | +.multicol img { page-break-after: column } |
| 1090 | +</pre> |
1099 | 1091 |
|
1100 | | -<h3>'column-break-after'</h3> |
| 1092 | +</div> |
1101 | 1093 |
|
1102 | | -<table class=propdef> |
1103 | | - <tr> |
1104 | | - <td><em>Name:</em> |
1105 | | - <td><dfn>column-break-after</dfn> |
1106 | | - <tr> |
1107 | | - <td><em>Value:</em> |
1108 | | - <td>auto | always | avoid |
1109 | | - <tr> |
1110 | | - <td><em>Initial:</em> |
1111 | | - <td>auto |
1112 | | - <tr> |
1113 | | - <td><em>Applies to:</em> |
1114 | | - <td>block-level elements |
1115 | | - <tr> |
1116 | | - <td><em>Inherited:</em> |
1117 | | - <td>no |
1118 | | - <tr> |
1119 | | - <td><em>Percentages:</em> |
1120 | | - <td>N/A |
1121 | | - <tr> |
1122 | | - <td><em>Media:</em> |
1123 | | - <td>visual |
1124 | | - <tr> |
1125 | | - <td><em>Computed value:</em> |
1126 | | - <td>as specified |
1127 | | -</table> |
| 1094 | +<p>The 'page-break-inside' property specifies the behavior of natural |
| 1095 | +column breaks inside elements. |
1128 | 1096 |
|
1129 | | -<p>Values for these properties have the following meanings: |
| 1097 | +<div class="example"> |
| 1098 | +<pre> |
| 1099 | +.multicol p { page-break-inside: avoid } |
| 1100 | +</pre> |
| 1101 | +</div> |
1130 | 1102 |
|
1131 | | -<dl> |
1132 | | -<dt>auto |
1133 | | -<dd>Neither force nor forbid a column break before / after / inside the generated box. |
1134 | | -<dt>always |
1135 | | -<dd>Always force a column break before / after the generated box. |
1136 | | -<dt>avoid |
1137 | | -<dd>Avoid a column break before / after / inside the generated box. |
1138 | | -</dl> |
| 1103 | +<p>Margins will be set to zero around column breaks, just like for |
| 1104 | +page breaks. |
1139 | 1105 |
|
1140 | 1106 |
|
1141 | 1107 | <h2>Spanning columns</h2> |
|
0 commit comments