Skip to content

Commit dde6207

Browse files
committed
Merge
2 parents 186ef43 + c1ea536 commit dde6207

3 files changed

Lines changed: 149 additions & 14 deletions

File tree

css-box/Overview.src.html

Lines changed: 114 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -801,6 +801,11 @@ <h2>Introduction &amp; definitions</h2>
801801
the first paragraph, and so on, until the bottom (C edge) of the last
802802
paragraph becomes the bottom (foot edge) of the document.
803803

804+
<p>An element is called <dfn>orthogonal</dfn> if it either a
805+
<em>vertical</em> element with a <em>horizontal</em> <em>containing
806+
block</em> or a <em>horizontal</em> element with a <em>vertical</em>
807+
<em>containing block.</em> An <dfn>orthogonal flow</dfn> is a
808+
<em>flow</em> whose <em>flow root</em> is an orthogonal element.
804809

805810

806811
<h2>The viewport and the canvas</h2>
@@ -876,10 +881,12 @@ <h2 id=flows>Flows</h2>
876881
<!-- <li>The value of 'position' is 'absolute' or 'fixed' (see
877882
[CSS3POS]). -->
878883

879-
<li>The box is vertical and its parent is horizontal. <span
880-
class=issue>[Add link to the relevant section.]</span>
884+
<li>The box is <span>vertical</span> and its parent is
885+
<span>horizontal.</span> <span class=issue>[Add link to the relevant
886+
section.]</span>
881887

882-
<li>The box is horizontal and its parent is vertical.
888+
<li>The box is <span>horizontal</span> and its parent is
889+
<span>vertical.</span>
883890

884891
<!-- <li>The value of 'transform' is not 'none'. -->
885892

@@ -2964,9 +2971,111 @@ <h3 id=blockwidth>Block-level, non-replaced elements
29642971
calculated from their computed values, with any ''auto'' values
29652972
replaced by 0.
29662973

2967-
<p>If the computed value of the <span>block flow dimension</span> is
2974+
<div class=note>
2975+
2976+
<p>The complexity of this section comes from the fact that ''auto''
2977+
values on 'width' and 'height' are resolved differently for
2978+
<em>horizontal</em> and for <em>vertical</em> elements, and
2979+
differently for parallel flows then for <span>orthogonal
2980+
flows</span> (i.e., when the <em>containing block</em> is horizontal
2981+
and the element itself vertical, or vice-versa). In paginated
2982+
contexts, the element may further be split into boxes of unequal
2983+
sizes.
2984+
2985+
<p>The are three principles. The first is: If the element's size in
2986+
the direction of the <em title="containing block">containing
2987+
block's</em> <em>inline dimension</em> (i.e., between the <em>B
2988+
edge</em> and the <em>D edge</em>) is ''auto'', then that size is
2989+
the same as the containing block (minus the element's own margins,
2990+
padding and borders, if applicable).
2991+
2992+
<p>The second principle applies to orthogonal flows only, and only
2993+
if they are not in a paginated environment: If an element is
2994+
orthogonal and its inline dimension (i.e., the distance between its
2995+
<em>A edge</em> and <em>C edge</em>) is ''auto'', then it is treated
2996+
as a <a
2997+
href="http://www.w3.org/TR/css3-multicol/#multi-column-element"
2998+
>multi-column element</a> [[!CSS3COL]] and 'column-width', if not
2999+
already set, is set to a value derived from the containing block's
3000+
size and the <span>initial containing block</span>
3001+
3002+
<p>The last principle applies to orthogonal flows in a paginated
3003+
environment, e.g., in paged media or inside a multi-column element:
3004+
Just like in a non-paginated environment, if an element is
3005+
orthogonal and its inline dimension is ''auto'', then it is treated
3006+
as a <a
3007+
href="http://www.w3.org/TR/css3-multicol/#multi-column-element"
3008+
>multi-column element</a> [[!CSS3COL]] and 'column-width', if not
3009+
already set, is set to a certain value. But, in addition, if that
3010+
means that the first column would be so wide as stick out of the
3011+
page or column (the <a
3012+
href="http://www.w3.org/TR/css3-break/Overview.html#fragmentainer"
3013+
>“fragmentainer,”</a> see [[CSS3-BREAK]]), then that first column is
3014+
made narrower until it fits. But not narrower than
3015+
''min-content''. (If at that size it still doesn't fit, it may
3016+
instead be moved to the next page/column or, if that is not
3017+
possible, overflow.)
3018+
3019+
</div>
3020+
3021+
3022+
3023+
<p>In a paginated environment, in particular inside a page or a
3024+
column with a fixed height, it may be that such a vertical element
3025+
with ''auto'' height would be too tall and would stick out below the
3026+
page or column. In that case, it is laid out with a smaller line
3027+
length, such that it doesn't stick out. (But not smaller than
3028+
''min-content'')
3029+
3030+
<p>Whether in a paginated environment or not, such a vertical
3031+
element, including its margin, padding and border, may be too wide
3032+
for its containing block. In that case it is paginated. The
3033+
different fragments that result from that may have a different line
3034+
lengths in that case, e.g., in the case of the following figure. The
3035+
fragments each have the top and bottom margin, padding and border of
3036+
the element (although in a paginated environment, some of those
3037+
margins disappear).
3038+
3039+
<div class=figure>
3040+
<p><img src="paginated-ortho" alt="Two pages of a book">
3041+
3042+
<p class=caption>A horizontal text (represented by letters A, B, C…)
3043+
containing a section with vertical text (represented by digits 1, 2,
3044+
3…). The document is paginated and the vertical text ends up split
3045+
over two pages. Note that the fragment of vertical text on the first
3046+
page has a longer line length (<em>inline dimension</em>) than the
3047+
fragment on the second page.
3048+
</div>
3049+
3050+
<p>If the containing block is vertical, the situation is analogous,
3051+
but with width and height changing roles:
3052+
3053+
<p>The height of the element itself is either as specified, or, if
3054+
it is ''auto'', calculated from the containing block's height by
3055+
subtracting the element's own margins, padding and border. (Which of
3056+
those are subtracted is determined by 'box-sizing'.)
3057+
3058+
<p>If the element is vertical, i.e., the same as its containing
3059+
block, this height is then used as the line length (<em>inline
3060+
dimension</em>) for laying out the element. And if the element is
3061+
horizontal, i.e., orthogonal to the containing block, its width is
3062+
used as line length, or, if that width is ''auto'', ''max-content is
3063+
used instead.
3064+
3065+
<p>If such a horizontal element with ''auto'' width would stick out
3066+
of the side of a page or a fixed-length column when set with
3067+
''max-content'', it is instead laid out to a smaller width (but not
3068+
narrower than ''min-content'').
3069+
3070+
<p>If a horizontal element, including its margin, padding and
3071+
border, is too tall for its containing block, it is paginated.
3072+
</div>
3073+
3074+
3075+
3076+
<p>If the computed value of the <span>block dimension</span> is
29683077
not ''auto'', then the used value is calculated by evaluating the
2969-
computed value. Otherwise, the <span>block flow dimension</span> is
3078+
computed value. Otherwise, the <span>block dimension</span> is
29703079
the distance between two edges that are defined as follows:
29713080

29723081
<ul>

css-break/Overview.src.html

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
<!DOCTYPE html public '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'>
1+
<!DOCTYPE html public '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'>
22
<html lang="en">
33
<head profile="http://www.w3.org/2006/03/hcard">
44
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
55
<title>CSS Fragmentation Module Level 3</title>
66
<link rel="stylesheet" type="text/css" href="../default.css">
7-
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-[STATUS].css">
7+
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-ED.css">
88
</head>
99
<body>
1010
<div class="head">
1111
<!--logo-->
12-
<h1 id="css-fragmentation-module">CSS Fragmentation Module Level 3:<br>
13-
Breaking the Web, one fragment at a time</h1>
12+
<h1 id="css-fragmentation-module">CSS Fragmentation Module Level 3</h1>
13+
<h2 id=subtitle class="no-num no-toc">Breaking the Web, one
14+
fragment at a time</h2>
1415
<h2 class="no-num no-toc">[LONGSTATUS] [DATE]</h2>
1516
<dl>
1617
<dt>This version:</dt>
17-
<!--<dd><a href="[VERSION]">http://www.w3.org/TR/[YEAR]/WD-[SHORTNAME]-[CDATE]/</a></dd>-->
18-
<dd><a href="http://dev.w3.org/csswg/[SHORTNAME]/">http://dev.w3.org/csswg/[SHORTNAME]/</a></dd>
18+
<dd><a href="[VERSION]">[VERSION]</a></dd>
1919

2020
<dt>Latest version:</dt>
2121
<dd><a href="http://www.w3.org/TR/[SHORTNAME]/">http://www.w3.org/TR/css3-break/</a></dd>
@@ -61,6 +61,9 @@ <h2 class="no-num no-toc" id="status">
6161
Status of this document</h2>
6262
<!--status-->
6363
<!--<p>The following features are at risk: &hellip;</p>-->
64+
<p>
65+
See the <a href="#changes" >Changes section</a> for significant
66+
changes since the previous draft.
6467

6568
<h2 class="no-num no-toc" id="contents">
6669
Table of contents</h2>
@@ -1154,7 +1157,7 @@ <h4 id="joining-boxes">
11541157
and fragments from subsequent lines are put to the right of it.
11551158
In a right-to-left containing block,
11561159
the first fragment is the rightmost on the first line
1157-
and subsequent fragments are put to the left of it.</p>
1160+
and subsequent fragments are put to the left of it.
11581161
</dd>
11591162

11601163
<dt>For boxes broken across columns</dt>
@@ -1396,7 +1399,7 @@ <h2 class="no-num" id="changes">
13961399
<li>Defined that boxes <a href="#box-splitting">extend to the bottom of the page</a> when broken.
13971400
<li>Defined breaking of <a href="#transforms">transformed/positioned content</a>.
13981401
<li>Defined 1px minimum extent of fragmentainers to ensure progress.
1399-
<li>Clarified fragmentation of <a href="#paraparal-flows">parallel flows</a>.
1402+
<li>Clarified fragmentation of <a href="#parallel-flows">parallel flows</a>.
14001403
<li>Defined handling of overflowing content (as parallel content).
14011404
<li>Clarified <a href="#varying-size-boxes">float fragmentation</a> in varying-size fragmentainers.
14021405
<li>Various other clarifications.

css-template/Overview.src.html

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2237,6 +2237,10 @@ <h2 id=absolute>Elements with 'display' or ''grid'' or
22372237
automatically with either extra rows or extra columns, if there are
22382238
more children than predefined slots.
22392239

2240+
<p>Note that the template of a grid container is also mirrored and/or
2241+
rotated depending on the 'writing-mode' and 'direction' of the grid
2242+
container, unlike the template of a grid element.
2243+
22402244
<!--=================================================================-->
22412245

22422246
<h2>Styling slots</h2>
@@ -2269,6 +2273,8 @@ <h3 id=slot-pseudo>The ''::slot()'' pseudo-element</h3>
22692273
<ul>
22702274
<li>background properties
22712275

2276+
<li>'box-shadow'
2277+
22722278
<li>'vertical-align' (see <a href="#vertical-alignment" >“vertical
22732279
alignment”</a> below)
22742280

@@ -2287,6 +2293,8 @@ <h3 id=slot-pseudo>The ''::slot()'' pseudo-element</h3>
22872293

22882294
<li>margin properties
22892295

2296+
<li>outline properties
2297+
22902298
<li>'box-decoration-break'
22912299

22922300
<li>column properties
@@ -2296,6 +2304,12 @@ <h3 id=slot-pseudo>The ''::slot()'' pseudo-element</h3>
22962304

22972305
<li>'opacity'
22982306

2307+
<li>transform properties
2308+
2309+
<li>mask properties
2310+
2311+
<li>'filter'
2312+
22992313
<li>'content' (see <a href="#content" >“Slots and the 'content'
23002314
property”</a> below)
23012315
</ul>
@@ -3949,7 +3963,7 @@ <h4 id=select-after-pseudo>Style the contents of slots (region-based
39493963

39503964
<h4>Orient the grid with writing mode vs orient the slots</h4>
39513965

3952-
<p>A grid can contain vertical text, but the grid itself probably
3966+
<p>A grid can contain vertical text, but the grid itself
39533967
doesn't need to be rotated or flipped. Indeed, it would be confusing
39543968
if it did. In other words, the following element has vertical text in
39553969
the top right slot and an image in the bottom right slot:
@@ -3967,6 +3981,15 @@ <h4>Orient the grid with writing mode vs orient the slots</h4>
39673981
themselves can have a writing mode (by default the one “inherited”
39683982
from the grid element).
39693983

3984+
<p>This is different for <em>container elements,</em> i.e., elements
3985+
with a 'display' of ''grid'' or ''inline-grid'', as those are designed
3986+
for graphical user interfaces, where it is sometimes useful to swap a
3987+
row of buttons, e.g., in a different language. Grids inside other
3988+
elements (''block'', ''list-item'', ''inline-block'', ''table-cell'',
3989+
etc.) are more likely to depend on the orientation of the page
3990+
(landscape/portrait, recto/verso); but that has to be handled
3991+
explicitly by the designer by means of media queries and selectors.
3992+
39703993
<!--=================================================================-->
39713994

39723995
<h4>Indicating the default slot ('*' vs '@')</h4>

0 commit comments

Comments
 (0)