Style transformOrigin 属性 详解
css3基础 2023-07-30 03:23:54小码哥的IT人生shichen
Style transformOrigin 属性
定义和用法
transformOrigin
属性允许您更改已转换元素的位置。
2D 转换元素可以改变元素的 x 轴和 y 轴。3D 转换元素还可以改变元素的 z 轴。
注释:此属性必须与 transform 属性 一起使用。
另请参阅:
JavaScript Style 对象:transform 属性
CSS 参考手册:transform-origin 属性
实例
设置旋转元素的基本位置:
document.getElementById("myDIV").style.transformOrigin = "0 0";
完整实例【亲自试一试】:
<!DOCTYPE html>
<html>
<head>
<style>
#DIV1 {
height: 200px;
width: 200px;
margin: auto;
border: 1px solid black;
}
#DIV2 {
width: 150px;
height: 150px;
border: 1px solid black;
background-color: coral;
-ms-transform: rotate(45deg); /* IE 9 */
transform: rotate(45deg);
}
#DIV2original {
position: absolute;
width: 150px;
height: 150px;
border: 1px dashed grey;
background-color: lightgrey;
opacity: 0.5;
}
</style>
</head>
<body>
<p>请点击“试一试”按钮,将 x 轴和 y 轴的旋转原点都设置为 0:</p>
<p><b>注释:</b>灰色 DIV 元素指示 DIV2 元素在没有转换的情况下的位置。</p>
<button onclick="myFunction()">试一试</button>
<div id="DIV1">DIV1
<div id="DIV2original">DIV2</div> <div id="DIV2">DIV2</div>
</div>
<script>
function myFunction() {
// 针对 IE9 的代码
document.getElementById("DIV2").style.msTransformOrigin = "0 0";
// 标准语法
document.getElementById("DIV2").style.transformOrigin = "0 0";
}
</script>
<p><b>注释:</b>Internet Explorer 9 支持替代方法,即 msTransformOrigin 属性。更新版本的 IE 和 Edge 支持 transformOrigin 属性(不需要 ms 前缀)。</p>
</body>
</html>
可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html
语法
返回 transformOrigin 属性:
object.style.transformOrigin
设置 transformOrigin 属性:
object.style.transformOrigin = "x-axis y-axis z-axis|initial|inherit"
属性值
值 | 描述 |
---|---|
x-axis |
定义视图在 x 轴上的放置位置。可能的值:
|
y-axis |
定义视图在 y 轴上的放置位置。可能的值:
|
z-axis |
定义视图在 z 轴上的放置位置。可能的值:
|
initial | 将此属性设置为其默认值。请参阅 initial。 |
inherit | 从其父元素继承此属性。请参阅 inherit。 |
技术细节
默认值: | 50% 50% 0 |
---|---|
返回值: | 字符串,表示元素的 transform-origin 属性。 |
CSS 版本: | CSS3 |
浏览器支持
表中的数字注明了首个完全支持该属性的浏览器版本。
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
36.0 | 10.0 | 16.0 | 9.0 | 23.0 |