margin-block

**margin-block** CSS 简写属性 定义元素的逻辑块开始和结束边距,根据元素的书写模式、方向性和文本方向映射到物理边距。

试用

组成属性

此属性是以下 CSS 属性的简写

语法

css
/* <length> values */
margin-block: 10px 20px; /* An absolute length */
margin-block: 1em 2em; /* relative to the text size */
margin-block: 5% 2%; /* relative to the nearest block container's width */
margin-block: 10px; /* sets both start and end values */

/* Keyword values */
margin-block: auto;

/* Global values */
margin-block: inherit;
margin-block: initial;
margin-block: revert;
margin-block: revert-layer;
margin-block: unset;

此属性对应于 margin-topmargin-bottom,或 margin-rightmargin-left 属性,具体取决于 writing-modedirectiontext-orientation 定义的值。

margin-block 属性可以使用一个或两个值指定。

  • 当指定 **一个** 值时,它会将相同的边距应用于 **开始和结束**。
  • 当指定 **两个** 值时,第一个边距应用于 **开始**,第二个边距应用于 **结束**。

margin-block 属性采用与 margin 属性相同的值。

正式定义

初始值与简写中每个属性的初始值相同
应用于margin 相同
继承
百分比取决于布局模型
计算值与简写中每个属性的初始值相同
  • margin-block-start: 如果指定为长度,则为相应的绝对长度;如果指定为百分比,则为指定的值;否则为 auto
  • margin-block-end: 如果指定为长度,则为相应的绝对长度;如果指定为百分比,则为指定的值;否则为 auto
动画类型<length>

正式语法

margin-block = 
<'margin-top'>{1,2}

<margin-top> =
<length-percentage> |
auto

<length-percentage> =
<length> |
<percentage>

示例

设置块开始和结束边距

CSS

css
div {
  background-color: yellow;
  width: 120px;
  height: auto;
  border: 1px solid green;
}

p {
  margin: 0;
  margin-block: 20px 40px;
  background-color: tan;
}

.verticalExample {
  writing-mode: vertical-rl;
}

HTML

html
<div>
  <p>Example text</p>
</div>
<div class="verticalExample">
  <p>Example text</p>
</div>

结果

规范

规范
CSS 逻辑属性和值级别 1
# propdef-margin-block

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅