CSS3旋转缩放移动倾斜等效果——transform

前端开发 作者: 2024-06-14 17:20:01
1.transform浏览器支持情况 也就是说目前不考虑老浏览器的话是不用加前缀的,感谢菜鸟教程:https://www.runoob.com/cssref/css3-pr-transform.htm

1.transform浏览器支持情况

也就是说目前不考虑老浏览器的话是不用加前缀的,感谢菜鸟教程:https://www.runoob.com/cssref/css3-pr-transform.html

transform默认值none;就是不转换,不继承,js中对其更改示例:object.style.transform="rotate(7deg)"

2.transform能干啥?

transform属性让元素进行2D或3D转换。可以将元素:旋转,缩放,移动,倾斜等。

3.transform怎么用? 

none是默认的,就是不进行转换,好理解。transform-functions有哪些?如下表:

transform-functions的值 描述 示例 n,n,n)n,n)x,y)x,y,z)x)y)z)x,y)x,z)x)y)z)angle)x,z,angle)angle)angle)angle)x-angle,y-angle)transform: rotate(30deg,60deg);

</tr>
<tr style="background-color: #ffe4c4">
<td><span style="background-color: #ffffff">skewX(angle)
</td>
<td><span style="background-color: #ffffff">定义沿着 X 轴的 2D 倾斜。</td>
<td> </td>

</tr>
<tr style="background-color: #ffe4c4">
<td><span style="background-color: #ffffff">skewY(angle)</td>
<td><span style="background-color: #ffffff">定义沿着 Y 轴的 2D 倾斜。</td>
<td> </td>

</tr>
<tr>
<td>perspective(n)</td>
<td>为 3D 转换元素定义透视视图。</td>
<td>测试</td>

</tr>

 4.详细介绍下transform属性怎么用

页面有个几个div,宽200px,高100px,有的为其加上transform:rotate(30deg),效果如下(1\2\3\6是没有定义transform的):

注意,这是打开页面就会变形旋转好的,不会有动画!!!

使用transition过渡,才会产生动画。如下:

{ :; } { :; }

效果如下:

 下面主要介绍transform属性值的效果,所以都配合transition来使用吧,方便看看前后变化的不同。

skewX(x) ,x是倾斜的度数,

看看我的变化 我是下一行内容

 效果如下:

 

 skewY(y),上面代码skewX改为skewY,效果如下

skew就是skewX和skeY的合集,上面第7行transform: skewX(-45deg);改为transform: skew(-45deg,45deg);效果如下

 

在这里,我不得不承认,还是在大脑总难以图像化:skew怎么去变形的过程。只有x轴上变动可以在脑中有个印象,只有Y轴变动,也可以有个动态的过程,都变动的话,嗯,脑子中形成不了那个印象。下面图对让变动和原图对比,看看怎么变的,也不深究了。。。

 

再来看看缩放函数transform:scale(2); 放大两倍(看到没,放大了是视觉上的,并不挤占兄弟和父级的空间)

{ :;:;:; :; } { :; }
看看我的变化

 

还有一个函数translate,它的意思就是位移!translateX只是它的分支。比如,向左移动50px之类的。

{ :;:;:; :; } { :; }

 

 5.变形基点transform-origin

上面说到的旋转、平移,缩放,其实都有个基点(可以理解为变形中未动的点,先用钉子将该点钉起来,然后完成变形,钉的点不同,变形后新位置当然也不一样!),默认的是正中心位置(重心),上图表明下基点是什么,如下:

基点在左上角和中心进行旋转的话,区别如下图

 transform-origin要和transform一起用,毕竟如果没有transform变形,谈基点有什么意义呢?

a

原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_27036.html