CSS2D转换

579 阅读2分钟

2D转换

**转换(transform)**是CSS3中具有颠覆性的特征之一,可以实现元素的位移、旋转、缩放等效果

  • 移动:translate
  • 旋转:rotate
  • 缩放:scale

1.2D转换之移动translate

2D移动式2D转换里面的一种功能,可以改变元素在页面中的位置,类似定位

语法

	transform: translate(x, y);
	transform: translateX(n);
	transform: translateY(n);

重点

  • 定义2D转换中的移动,沿着X和Y轴移动元素
  • translate最大的优点:不会影响其他元素的位置
  • translate中的百分比单位是相对于自身元素的。translate:(50%, 50%)
  • 对行内标签没有效果

2.2D转换之旋转rotate

2D旋转指的是让元素在2维平面内顺时针旋转或者逆时针旋转。

语法

	transform: rotate(度数);

重点

  • rotate李卖弄跟读书,单位是deg。比如rotate(45deg)
  • 角度为正时,顺时针;负时,为逆时针
  • 默认旋转的中心点事元素的中心点

3.2D转换之中心点transform-origin

语法

	transform-origin: x y;

重点

  • 注意后面的参数x和y用空格隔开
  • x y 默认旋转的中心点是元素的中心点即(50% 50%)
  • 还可以给x y 设置像素或者方位名词(top right bottom left center)

4.2D转换之缩放scale

缩放,顾名思义,可以放大和缩小。只要给元素添加上了这个属性就能控制它放大还是缩小。

语法

	transform: scale(x, y);

注意

  • 注意其中的x和y用逗号分隔
  • transform: scale(1, 1): 宽和高都放大了一倍,相当于没有放大
  • transform: scale(2, 2): 宽和高放大了2倍
  • transform: scale(2): 只写一个参数,第二个参数则和第一个参数一样,相当于scale(2, 2)
  • transform: scale(0.5, 0.5): 缩小
  • scale缩放最大的优势: 可以设置转换中心点缩放,默认以中心带你缩放的,而且不影响其他盒子。

5.2D转换综合写法

注意
1.同时使用多个转换,其格式为:transform: translate() rotate() scale() ...
2.其顺序会影响转换的效果。(先旋转会改变坐标轴方向)
3.当同时有位移和其他属性的时候,要将位移放到最前

>>>前端学习之路<<<