CSS新特性之2D转换transform
transform是css3中具有颠覆性特征之一,可以实现元素的位移、旋转、缩放等效果
1.位移translate
1.1语法
transform: translate(x,y);//x,y分别表示x轴和y轴上移动的距离 transform: translateX(n);//x轴上移动的位置 transform: translateY(n);//y轴上移动的位置
1.2举例子
<style type="text/css"> div { width: 200px; height: 200px; background-color: pink; /*transform: translate(100px,100px);*/ /*仅水平方向移动100px*/ /*transform: translateX(100px);*/ /*transform: translate(100px,0);但是y方向的0不可以省略*/ /*仅垂直方向移动100px*/ transform: translateY(100px); /*transform: translate(0,100px);仅垂直方向移动100px但是x方向的0不可以省略*/ } </style>
之前学过几种移动盒子的位置的方法:定位、盒子外边距。
现在又有一种新的方法就是translate,translate最大的优点就是不会影响到其他元素的位置。
1.3盒子水平垂直居中对齐
translate()、translateX()、translateY()中的单位除了是像素以外还可以是百分比
translate中的百分比单位是相对于自身元素的宽和高translate:(50%,50%),利用该方法可以实现盒子水平垂直居中对齐。
(1)结构
<div> <p></p> </div>
(2)样式
div { position: relative; height: 500px; width: 500px; background-color: pink; } p { position: absolute; top: 50%; left: 50%; /*1.以前的写法*/ /*margin-top: -100px; margin-left: -100px; 100px就是p盒子宽高(200px)的一半*/ /*2.现在的写法*/ transform: translate(-50%,-50%);/*向X轴、Y轴负方向走自身宽度的一半*/ width: 200px; height: 200px; background-color: purple; }
1.4 translate对行内标签没有影响
结构
<span>123</span>
样式
span { transform: translate(300px,300px); }
结果会发现123是不会动的
2.旋转rotate
3.缩放scale
相关推荐
sunshineboyleng 2020-07-08
impress 2020-05-11
yaodilu 2020-04-30
/*垂直居中,div上边界距离窗口上边的距离为窗口高度的50%,并针对不同浏览器进行兼容。-- 在外层添加一个div,把行内容居中,添加.row .justify-content-center -->
Phoebe的学习天地 2020-04-14
福叔 2020-04-11
zjuwangleicn 2020-03-08
冰蝶 2020-03-01
somboy 2020-02-29
zengni 2020-02-23
wangjie 2020-02-22
tianzyc 2020-02-19
冰蝶 2020-02-16
lanzhusiyu 2020-02-03
lanzhusiyu 2020-01-12
MaureenChen 2020-01-01
jiedinghui 2019-12-27
zhanghao 2019-12-20
bertzhang 2019-12-14