Skip to content

Commit aefa1a3

Browse files
committed
[css-box-3] Change model of margin-trim. w3c#6643
1 parent a1a9513 commit aefa1a3

File tree

1 file changed

+26
-16
lines changed

1 file changed

+26
-16
lines changed

css-box-4/Overview.bs

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -355,12 +355,12 @@ Margins at Container Edges: the 'margin-trim' property {#margin-trim}
355355

356356
<pre class="propdef">
357357
Name: margin-trim
358-
Value: none | in-flow | all
358+
Value: none | block | inline | [ block-start || inline-start || block-end || inline-end ]
359359
Initial: none
360360
Applies to: [=block containers=], [=multi-column containers=]
361361
Inherited: no
362362
Percentages: N/A
363-
Computed value: keyword as specified
363+
Computed value: a set of zero to four keywords indicating which sides to trim
364364
Animation type: discrete
365365
</pre>
366366

@@ -381,30 +381,40 @@ Margins at Container Edges: the 'margin-trim' property {#margin-trim}
381381
child margins can collapse with their parent.
382382
See <a href="https://www.w3.org/TR/CSS2/box.html#collapsing-margins">CSS2&sect;8.3.1: Collapsing Margins</a>.
383383

384-
<dt><dfn>in-flow</dfn>
384+
<dt><dfn>block-start</dfn>
385+
<dt><dfn>inline-start</dfn>
386+
<dt><dfn>inline-end</dfn>
387+
<dt><dfn>block-end</dfn>
385388
<dd>
386-
For in-flow boxes contained by this box,
387-
block-axis margins adjacent to the box’s edges
389+
For in-flow boxes and floats contained by this box,
390+
margins adjacent to the box’s specified edges
388391
are truncated to zero.
389392
It also truncates any margins collapsed with such a margin.
390393

391-
<dt><dfn>all</dfn>
394+
<dt><dfn>block</dfn>
392395
<dd>
393-
Trims the margins of in-flow boxes as for ''in-flow'',
394-
but also trims any float margin
395-
whose [=margin edge=] coincides
396-
with the container’s [=content edge=].
396+
Computes to ''block-start block-end''.
397+
398+
<dt><dfn>inline</dfn>
399+
<dd>
400+
Computes to ''inline-start inline-end''.
397401
</dl>
398402

399-
Specifically, for [=block containers=],
400-
''margin-trim: in-flow'' or ''margin-trim: all'' discards:
403+
Note: Following the shortest-serialization principle,
404+
[=computed values=] equivalent to ''margin-trim/block'' or ''margin-trim/inline''
405+
will serialize as those keywords.
406+
407+
For [=block containers=] specifically,
408+
'margin-trim' discards:
401409
<ul>
402-
<li>The block-start margin of a block-level first child.
403-
<li>The block-end margin of a block-level last child.
410+
<li>The block-start margin of a block-level first child,
411+
when trimming at the block-start edge.
412+
<li>The block-end margin of a block-level last child,
413+
when trimming at the block-end edge.
404414
<li>Any margin collapsed with these margins.
405415
</ul>
406416

407-
''margin-trim: all'' also affects floats
417+
It also affects floats
408418
for which the [=block container=] is a [=containing block=] by:
409419
<ul>
410420
<li>
@@ -429,7 +439,7 @@ Margins at Container Edges: the 'margin-trim' property {#margin-trim}
429439

430440
ISSUE: Should this property apply to [=flex containers=] or [=grid containers=]?
431441

432-
ISSUE: Should floats have a <css>floats</css> value that only affects floats?
442+
ISSUE(3256): Floats definition needs more work.
433443

434444
Note: See also the 'margin-break' property,
435445
which applies to the box’s own margins

0 commit comments

Comments
 (0)