CSS3 transform变换
1、translate(x,y) 设置盒子位移
2、scale(x,y) 设置盒子缩放
3、rotate(deg) 设置盒子旋转
4、skew(x-angle,y-angle) 设置盒子斜切
5、perspective 设置透视距离
6、transform-style flat | preserve-3d 设置盒子是否按3d空间显示
7、translateX、translateY、translateZ 设置三维移动
8、rotateX、rotateY、rotateZ 设置三维旋转
9、scaleX、scaleY、scaleZ 设置三维缩放
10、tranform-origin 设置变形的中心点
11、backface-visibility 设置盒子背面是否可见
默认文字不可见:overflow:(hidden)
设置边框:borer:1px solid #000(像素为1px的黑色边框)
图片文字遮罩
间距用p标签的margin。而不直接给.pic_info用pading,因为padding会改变盒子大小
比如:定位使色块在图片的正下方
position: absolute;
left: 0;
top: 300px;
transition: all 500ms cubic-bezier(0.470, -0.485, 0.460, 1.435);
扩展二级菜单
比如扩展在右边:
position: absolute;
left: 200px;
top: 0px;
transition: all 500ms cubic-bezier(0.470, -0.600, 0.475, 1.605);
变形
.box:hover{
transform: translate(50px,50px);(位移)
transform: rotate(360deg);(沿Z轴旋转360度)
transform: scale(0.5,0.2);(缩放)
transform: skew(0,45deg);(斜切)
}
元素旋转
旋转方向判断:X轴向右、Y轴向下、Z轴向屏幕外 让轴向对着自己,顺时针方向就是该轴向的旋转方向
设置盒子按3D空间显示:
transform-style: preserve-3d;
transform: perspective(800px) rotateY(0deg);
perspective设置透视距离,经验数值800比较符合人眼的透视效果
默认沿z轴旋转:
.box:hover{rotateX(45deg);*/ transform: perspective(800px) rotateY(-45deg); }
设置变形的中心点
transform:left conter;(左中)left top(左上)50px 50px(以(50px,50px)为中心点)
背面可见
.box{
transform-style: preserve-3d;(设置盒子按3d空间显示)
transform: perspective(800px) rotateY(0deg);(设置透视距离、三维旋转的初始角度)
backface-visibility: hidden;(设置盒子背面是否可见)
}
.con:hover .box{
transform: rotateY(180deg);
}