margin-trim
Quick Summary for margin-trim
The margin-trim property allows the container to trim the margins of its children where they adjoin the container's edges.
Code Usage for margin-trim
margin-trim: none; margin-trim: in-flow; margin-trim: all;  /* Global values */ margin-trim: inherit; margin-trim: initial; margin-trim: revert; margin-trim: unset; 
More Details for margin-trim

margin-trim

The margin-trim property allows the container to trim the margins of its children where they adjoin the container's edges.

Syntax

margin-trim: none; margin-trim: in-flow; margin-trim: all;  /* Global values */ margin-trim: inherit; margin-trim: initial; margin-trim: revert; margin-trim: unset; 

Values

none

Margins are not trimmed by the container.

in-flow

For in-flow boxes contained by this box, block-axis margins adjacent to the box's edges are truncated to zero.

It also truncates any margins collapsed with such a margin.

all

Trims the margins of in-flow boxes and floats whose margins coincide with the container's content edge.

Formal definition

Initial valuenone
Applies toBlock containers and multi-column containers. It also applies to ::first-letter and ::first-line.
Inheritedno
Computed valueas specified
Animation typediscrete

Formal syntax

none | in-flow | all

Examples

Basic usage

Once support is implemented for this property, it will probably work like so:

When you've got a container with some inline children and you want to put a margin between each child but not have it interfere with the spacing at the end of the row, you might do something like this:

article {   background-color: red;   margin: 20px;   padding: 20px;   display: inline-block; }  article > span {   background-color: black;   color: white;   text-align: center;   padding: 10px;   margin-right: 20px; } 

The problem here is that you'd end up with 20px too much spacing at the right of the row, so you'd maybe do this to fix it:

span:last-child {   margin-right: 0; } 

It is a pain having to write another rule to achieve this, and it is also not very flexible. Instead, margin-trim could fix it:

 article {   margin-trim: in-flow;   ... } 

Specifications

Specification
CSS Box Model Module Level 4 # margin-trim

See also

margin

No Items Found.

Add Comment
Type in a Nick Name here
 
Other Categories in CSS
css
Search CSS
Search CSS by entering your search text above.
Welcome

This is my test area for webdev. I keep a collection of code here, mostly for my reference. Also if i find a good link, i usually add it here and then forget about it. more...

Subscribe to weekly updates about things i have added to the site or thought interesting during the last week.

You could also follow me on twitter or not... does anyone even use twitter anymore?

If you found something useful or like my work, you can buy me a coffee here. Mmm Coffee. ☕

❤️👩‍💻🎮

🪦 2000 - 16 Oct 2022 - Boots
Random Quote
Nothing, to my way of thinking, is a better proof of a well ordered mind than a man's ability to stop just where he is and pass some time in his own company.
Seneca
Random CSS Property

:indeterminate

The :indeterminate CSS pseudo-class represents any form element whose state is indeterminate, such as checkboxes which have their HTML indeterminate attribute set to true, radio buttons which are members of a group in which all radio buttons are unchecked, and indeterminate <progress> elements.
:indeterminate css reference