摘要
margin-right 属性 设置与元素相关联的盒子模型的右外边距。这个值可以为负值。
竖直排列相邻的两个盒子模型的外边距会重叠,称为 margin collapsing.
| 初始值 | 0 |
|---|---|
| 适用元素 | all elements, except elements with table display types other than table-caption, table and inline-table. It also applies to ::first-letter. |
| 是否是继承属性 | 否 |
| Percentages | refer to the width of the containing block |
| 适用媒体 | visual |
| 计算值 | the percentage as specified or the absolute length |
| Animation type | a length |
| 正规顺序 | the unique non-ambiguous order defined by the formal grammar |
语法
/* <length> values */ margin-right: 20px; /* An absolute length */ margin-right: 1em; /* A length relative to the text size */ margin-right: 5%; /* A margin relative to the nearest block container's width */ /* Keyword values */ margin-right: auto; /* Global values */ margin-right: inherit; margin-right: initial; margin-right: unset;
值
<length>- 一个固定宽度
<length>值: 可以是一个绝对宽度,e.g. inpx, 也可以是一个相对宽度, e.g. inem, 或者相对视窗的大小,e.g. invh. <percentage>- 以百分比为单位的margin值,计算时是相对于其最近的父级容器的宽度。
auto- auto关键词表示在当前布局模式下,浏览器根据接收的左边距自动计算出外边距。如果有几组margin-left和margin-right 设置为auto,那么最后计算的空间分布,会根据display,float,position属性,自动生成以下几种情况:
Value of displayValue of floatValue of positionComputed value of autoComment inline,inline-block,inline-tableany staticorrelative0Inline layout mode block,inline,inline-block,block,table,inline-table,list-item,table-captionany staticorrelative0, except if bothmargin-leftandmargin-rightare set toauto. In this case, it is set to the value centering the element inside its parent.Block layout mode block,inline,inline-block,block,table,inline-table,list-item,table-captionleftorrightstaticorrelative0Block layout mode (floating element) any table-*, excepttable-captionany any 0Internal table-*elements don't have margins, useborder-spacinginsteadany, except flex,inline-flex, ortable-*any fixedorabsolute0, except if bothmargin-leftandmargin-rightare set toauto. In this case, it is set to the value centering the border area inside the availablewidth, if fixed.Absolutely positioned layout mode flex,inline-flexany any 0, except if there is any positive horizontal free space. In this case, it is evenly distributed to all horizontalautomargins.Flexbox layout mode
形式语法
<length> | <percentage> | auto
实例
.content { margin-right: 5%; }
.sidebox { margin-right: 10px; }
.logo { margin-right: -5px; }
说明
| Specification | Status | Comment |
|---|---|---|
| CSS Basic Box Model margin-right |
Working Draft | No significant change |
| CSS Transitions margin-right |
Working Draft | Defines margin-right as animatable. |
| CSS Flexible Box Layout Module margin-right |
Candidate Recommendation | Defines the behavior of margin-right on flex items. |
| CSS Level 2 (Revision 1) margin-right |
Recommendation | Removes its effect on inline elements. |
| CSS Level 1 margin-right |
Recommendation | Initial definition |
浏览器兼容性
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|
| Basic support | 1.0 | 1.0 (1.7 or earlier) | 3.0 | 3.5 | 1.0 (85) |
auto value |
1.0 | 1.0 (1.7 or earlier) | 6.0 (strict mode) | 3.5 | 1.0 (85) |
| Feature | Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
| Basic support | 1.0 | 1.0 (1) | 6.0 | 6.0 | 1.0 |