CSS - margin-block-end 属性



CSS margin-block-end 属性用于设置元素在块方向末尾的边距空间。 writing-mode 属性决定了块方向。

语法

margin-block-end: auto | length | percentage | initial | inherit;

属性值

描述
auto 浏览器自动设置块末端边缘的边距。默认值。
length 使用长度单位(例如 px、em、rem 等)设置块末端边缘的边距空间。允许使用负值。
percentage 使用百分比值(例如 10%)相对于包含元素设置块末端边缘的边距空间。
initial 将属性设置为其默认值。
inherit 从父元素继承该属性。

CSS Margin Block end 属性示例

以下示例说明了使用不同值的 margin-block-end 属性。

使用 Auto 值的 Margin Block End 属性

要允许浏览器根据可用空间自动计算块末端边缘的边距,我们使用 auto 值。这在以下示例中显示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .container {
         height: 240px;
         padding: 20px;
      }

      .demo {
         background-color: lightgreen;
         width: 50%;
         padding: 15px;
         border: 3px dashed red;
         text-align: center;
      }

      .item {
         background-color: lightblue;
         border-bottom: 4px solid red;
      }

      .auto {
         margin-block-end: auto;

      }
   </style>
</head>

<body>
   <h2>
      CSS margin-block-end property
   </h2>
   <h4>
      margin-block-end: auto
   </h4>
   <div class="container">
      <div class="demo">
         top box
      </div>
      <div class="auto demo item">
         This box has block-end edge margin = auto.
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
</body>

</html>

使用 Length 值的 Margin Block End 属性

要设置元素的 block-end 边缘的边距,我们可以使用长度单位(例如 px、em、rem 等)指定边距大小。这在以下示例中显示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .container {
         height: 240px;
         padding: 20px;
      }

      .demo {
         background-color: lightgreen;
         width: 50%;
         padding: 15px;
         border: 3px dashed red;
         text-align: center;
      }

      .item {
         background-color: lightblue;
         border-bottom: 4px solid red;
      }

      .single-value-px {
         margin-block-end: 30px;

      }

      .single-value-em {
         margin-block-end: 4em;
      }
   </style>
</head>

<body>
   <h2>
      CSS margin-block-end property
   </h2>
   <h4>
      margin-block-end: 30px
   </h4>
   <div class="container">
      <div class="demo">
         top box
      </div>
      <div class="single-value-px demo item">
         This box has block-end edge margin = 30px
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
   <h4>
      margin-block-end: 4em
   </h4>
   <div class="container">
      <div class="demo">
         top box
      </div>
      <div class="single-value-em demo item">
         This box has block-end edge margin = 4em
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
</body>

</html>

使用 Percentage 值的 Margin Block End 属性

要设置元素的 block-end 边缘的边距,我们可以使用百分比值(例如 10%(包含元素的宽度))指定边距大小。这在以下示例中显示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .container {
         height: 240px;
         padding: 20px;
      }

      .demo {
         background-color: lightgreen;
         width: 50%;
         padding: 15px;
         border: 3px dashed red;
         text-align: center;
      }

      .item {
         background-color: lightblue;
         border-bottom: 4px solid red;
      }

      .example1 {
         margin-block-end: 7%;

      }

      .example2 {
         margin-block-end: 15%;
      }
   </style>
</head>

<body>
   <h2>
      CSS margin-block-end property
   </h2>
   <h4>
      margin-block-end: 7%
   </h4>
   <div class="container">
      <div class="demo">
         top box
      </div>
      <div class="example1 demo item">
         This box has block-end edge margin = 7% 
         of the width of containing element.
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
   <h4>
      margin-block-end: 15%
   </h4>
   <div class="container">
      <div class="demo">
         top box
      </div>
      <div class="example2 demo item">
         This box has block-end edge margin = 15% 
         of the width of containing element.
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
</body>

</html>

使用 Writing Mode 的 Margin Block End 属性

margin-block-end 属性可以与 writing-mode 属性结合使用,后者决定了 block-end 的方向。在水平模式(如 horizontal-lr)中,block-end 为底部。在垂直模式(如 vertical-rl)中,block-end 为左侧。这些在以下示例中显示。

示例

<!DOCTYPE html>
<html>

<head>
   <style>
      .container {
         height: 240px;
         padding: 20px;
      }

      .demo {
         background-color: lightgreen;
         width: 50%;
         padding: 15px;
         border: 3px dashed red;
         text-align: center;
      }

      .item-horizontal {
         border-bottom: 4px solid red;
      }

      .item-vertical {
         border-left: 4px solid red;
      }

      .margin {
         background-color: lightblue;
         margin-block-end: 50px;
      }

      .horizontal {
         writing-mode: horizontal-lr;
      }

      .vertical {
         writing-mode: vertical-rl;
      }
   </style>
</head>

<body>
   <h2>
      CSS margin-block-end property
   </h2>
   <h4>
      margin-block-end: 50px; writing-mode: horizontal-lr;
   </h4>
   <div class="container">
      <div class="demo">
         top box
      </div>
      <div class="horizontal demo item-horizontal margin">
         This box has block-end edge margin = 50px 
         and writing-mode: horizontal-lr;
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
   <h4>
      margin-block-end: 50px; writing-mode: vertical-rl;
   </h4>
   <div class="container vertical">
      <div class="demo">
         top box
      </div>
      <div class="vertical demo item item-vertical margin">
         This box has block-end edge margin = 50px 
         and writing-mode: vertical-rl;
      </div>
      <div class="demo">
         bottom box
      </div>
   </div>
</body>

</html>

支持的浏览器

属性 Chrome Edge Firefox Safari Opera
margin-block-end 87.0 87.0 41.0 12.1 73.0
css_properties_reference.htm
广告