CSS right 语法
在 CSS 中,right 属性用于定义已定位元素的右部偏移量。这个属性只有在元素的 position 属性值不是 static 时才会生效。
语法:
right: 数值;说明:
right 属性取值一般是一个数值,比如 px、em、rem、百分比(%)等。其中,百分比是相对于参考对象的 “宽度” 计算的。
对于 right 属性,小伙伴们要清楚以下几点。
- 对于 position: relative; 的元素,right 的偏移是相对于元素 “自身” 原本在正常文档流中的位置向左偏移。
- 对于 position: absolute; 的元素,right 的偏移是相对于其 “最近的已定位祖先元素” 的内边距盒右边缘。
- 对于 position: fixed; 的元素,right 的偏移是相对于 “视口” 的右边缘。
- 对于 position: sticky; 的元素,right 的值定义了元素在容器水平滚动时(如果存在水平滚动),其右边缘距离容器右边缘的阈值,达到这个阈值后元素会粘住。
如果同时设置了 left 和 right,则需要分为以下 2 种情况考虑:
- 如果元素宽度是 auto,且它不是 flex 或 grid 的子项,那么浏览器会尝试 “拉伸” 元素以满足两侧的限制。
- 如果元素有固定宽度,或者处于某些特殊布局中(如 flex),则 left 通常优先级更高(尤其在从左到右的语言环境中)。
CSS right 摘要
| 属于 | CSS 定位 |
|---|---|
| 使用频率 | 高 |
| 是否继承 | 否 |
| 默认值 | auto |
| 兼容性 | 查看 |
| 官方文档 | 查看 |
| MDN | 查看 |
CSS right 示例
接下来,我们通过一个简单的例子来讲解一下 right 属性是如何使用的。
示例:right 基本用法
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
.parent {
position: relative;
width: 200px;
height: 200px;
background-color: lightskyblue;
}
.child {
position: absolute;
right: 30px;
width: 50px;
height: 50px;
background-color: hotpink;
}
</style>
</head>
<body>
<div class="parent">
<div class="child"></div>
</div>
</body>
</html>页面效果如下图所示。

分析:
在这个例子中,由于我们给父元素设置了 position: relative;,此时子元素的 position: absolute; 是相对于父元素来说的。right: 30px; 表示定义子元素距离父元素右部距离为 30px。
