用于浮动和定位的逻辑属性

2025-10-11 03:52:09

示例:定位布局的偏移属性

定位通常可以让我们相对于元素的包含块放置元素——我们就是参照元素在正常流里的位置给元素设置偏移。过去我们用实体属性 top、right、bottom 和 left 做这件事。

这些属性的取值是长度或百分比,而且参照的是用户屏幕的尺度。

逻辑属性规范创造了新的属性,你可以用来在你的书写模式里参照文本的流向定位。这些属性有:inset-block-start、inset-block-end、inset-inline-start 和 inset-inline-end。

在下面的例子里,带灰色点状边框的区域设置了 position: relative。为了在这个区域里用绝对定位放置蓝色盒子,我用了 inset-block-start 和 inset-inline-end 属性。把 writing-mode 属性改成 vertical-rl,或者加上 direction: rtl,看看相对于流的盒子是怎么根据文本方向保持位置的。

html

.container {

display: flex;

}

.inner {

width: 200px;

height: 200px;

position: relative;

border: 2px dotted grey;

}

.box {

border: 2px solid rgb(96 139 168);

border-radius: 5px;

background-color: rgb(96 139 168 / 0.2);

padding: 10px;

width: 100px;

height: 100px;

}

css.inner {

writing-mode: horizontal-tb;

}

.physical {

position: absolute;

top: 20px;

right: 0;

}

.logical {

position: absolute;

inset-block-start: 20px;

inset-inline-end: 0;

}

手把手教学|空调滤网拆洗不求人 4步变回夏日清凉小卫士
电子档案管理办法