inset-block-start

Baseline 广泛可用 *

此特性已得到良好支持,可在多种设备和浏览器版本上使用。自 2021 年 4 月起,所有浏览器均已支持此特性。

* 此特性的某些部分可能存在不同级别的支持。

inset-block-start CSS 属性定义了元素的逻辑块起始偏移,它根据元素的书写模式、方向性和文本朝向映射到物理插入。它对应于 toprightbottomleft 属性,具体取决于为 writing-modedirectiontext-orientation 定义的值。

插入属性 对非定位元素没有影响。

试一试

writing-mode: horizontal-tb;
writing-mode: vertical-rl;
writing-mode: horizontal-tb;
direction: rtl;
writing-mode: vertical-lr;
<section id="default-example">
  <div class="example-container" id="example-element">
    <div id="abspos">
      I am absolutely positioned with inset-block-start: 50px
    </div>
    <p>
      As much mud in the streets as if the waters had but newly retired from the
      face of the earth, and it would not be wonderful to meet a Megalosaurus,
      forty feet long or so, waddling like an elephantine lizard up Holborn
      Hill.
    </p>
  </div>
</section>
#example-element {
  border: 0.75em solid;
  padding: 0.75em;
  position: relative;
  width: 100%;
  min-height: 200px;
  unicode-bidi: bidi-override;
}

#abspos {
  background-color: yellow;
  color: black;
  border: 3px solid red;
  position: absolute;
  inset-block-start: 50px;
  inline-size: 140px;
}

语法

css
/* <length> values */
inset-block-start: 3px;
inset-block-start: 2.4em;
inset-block-start: anchor(end);
inset-block-start: calc(anchor-size(--my-anchor height, 70px) * 2);

/* <percentage>s of the width or height of the containing block */
inset-block-start: 10%;

/* Keyword value */
inset-block-start: auto;

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

inset-block-start 属性接受与 left 属性相同的值。

正式定义

初始值auto
应用于定位元素
继承性
百分比包含块的逻辑高度
计算值与盒偏移量相同:toprightbottomleft 属性,只是方向是逻辑的
动画类型一个长度百分比或 calc();

正式语法

inset-block-start = 
auto |
<length-percentage>

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

示例

设置块起始偏移量

HTML

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

CSS

css
div {
  background-color: yellow;
  width: 120px;
  height: 120px;
}

.exampleText {
  writing-mode: vertical-lr;
  position: relative;
  inset-block-start: 20px;
  background-color: #c8c800;
}

结果

规范

规范
CSS 逻辑属性和值第 1 级
# propdef-inset-block-start
CSS 定位布局模块第 3 级
# propdef-inset-block-start

浏览器兼容性

另见