CSS transform-origin 属性 详解
css3基础 2022-07-14 17:34:12小码哥的IT人生shichen
CSS transform-origin 属性
定义和用法
transform-origin 属性允许您改变被转换元素的位置。
2D 转换元素能够改变元素 x 和 y 轴。3D 转换元素还能改变其 Z 轴。
为了更好地理解 transform-origin 属性,请查看这个演示。
Safari/Chrome 用户:为了更好地理解 transform-origin 属性用于 3D 转换的情况,请查看这个演示。
注释:该属性必须与 transform 属性一同使用。
为了更好地理解 transform 属性,请查看这个演示。
另请参阅:
CSS3 教程:CSS3 2D 转换
CSS3 教程:CSS3 3D 转换
HTML DOM 参考手册:transformOrigin 属性
实例
设置旋转元素的基点位置:
div {
transform: rotate(45deg);
transform-origin: 20% 40%;
}
完整实例【亲自试一试】:
<!DOCTYPE html>
<html>
<head>
<style>
#div1
{
position: relative;
height: 200px;
width: 200px;
margin: 100px;
padding:10px;
border: 1px solid black;
}
#div2
{
padding:50px;
position: absolute;
border: 1px solid black;
background-color: yellow;
transform: rotate(45deg);
transform-origin:20% 40%;
-ms-transform: rotate(45deg); /* IE 9 */
-ms-transform-origin:20% 40%; /* IE 9 */
-webkit-transform: rotate(45deg); /* Safari and Chrome */
-webkit-transform-origin:20% 40%; /* Safari and Chrome */
-moz-transform: rotate(45deg); /* Firefox */
-moz-transform-origin:20% 40%; /* Firefox */
-o-transform: rotate(45deg); /* Opera */
-o-transform-origin:20% 40%; /* Opera */
}
</style>
</head>
<body>
<div id="div1">
<div id="div2">HELLO</div>
</div>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
页面底部有更多实例。
CSS 语法
transform-origin: x-axis y-axis z-axis;
属性值
值 | 描述 |
---|---|
x-axis |
定义视图被置于 X 轴的何处。可能的值:
|
y-axis |
定义视图被置于 Y 轴的何处。可能的值:
|
z-axis |
定义视图被置于 Z 轴的何处。可能的值:
|
技术细节
默认值: | 50% 50% 0 |
---|---|
继承性: | no |
版本: | CSS3 |
JavaScript 语法: | object.style.transformOrigin="20% 40%" |
浏览器支持
表格中的数字注明了完全支持该属性的首个浏览器版本。
带 -webkit-、-moz- 或 -ms- 的数字表示使用前缀的首个版本。
属性 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
transform-origin (二值语法) |
36.0 4.0 -webkit- |
10.0 9.0 -ms- |
16.0 3.5 -moz- |
9.0 3.2 -webkit- |
23.0 15.0 -webkit- 10.5 -o- |
transform-origin (三值语法) |
36.0 12.0 -webkit- |
10.0 | 16.0 10.0 -moz- |
9.0 4.0 -webkit- |
23.0 15.0 -webkit- |