translate()
translate()
CSS 函数 在水平和/或垂直方向上重新定位元素。其结果是 <transform-function>
数据类型。
试试看
此转换以二维向量 [tx, ty] 为特征。其坐标定义了元素在每个方向上移动的距离。
语法
css
/* Single <length-percentage> values */
transform: translate(200px);
transform: translate(50%);
/* Double <length-percentage> values */
transform: translate(100px, 200px);
transform: translate(100px, 50%);
transform: translate(30%, 200px);
transform: translate(30%, 50%);
值
- 单个
<length-percentage>
值 -
此值为
<length>
或<percentage>
,表示平移向量 [tx, 0] 的横坐标(水平,x 分量)。平移向量的纵坐标(垂直,y 分量)将设置为0
。例如,translate(2px)
等效于translate(2px, 0)
。百分比值指的是由transform-box
属性定义的参考框的宽度。 - 双
<length-percentage>
值 -
此值描述了两个
<length>
或<percentage>
值,分别表示平移向量 [tx, ty] 的横坐标(水平,x 分量)和纵坐标(垂直,y 分量)。第一个值的百分比指的是宽度,第二个值指的是由transform-box
属性定义的参考框的高度。
正式语法
translate(<length-percentage>
,<length-percentage>
?)
示例
使用单轴平移
HTML
html
<div>Static</div>
<div class="moved">Moved</div>
<div>Static</div>
CSS
css
div {
width: 60px;
height: 60px;
background-color: skyblue;
}
.moved {
/* Equal to: translateX(10px) or translate(10px, 0) */
transform: translate(10px);
background-color: pink;
}
结果
组合 y 轴和平移 x 轴
HTML
html
<div>Static</div>
<div class="moved">Moved</div>
<div>Static</div>
CSS
css
div {
width: 60px;
height: 60px;
background-color: skyblue;
}
.moved {
transform: translate(10px, 10px);
background-color: pink;
}
结果
规范
规范 |
---|
CSS Transforms 模块级别 1 # funcdef-transform-translate |
浏览器兼容性
BCD 表格仅在浏览器中加载