位移 / 缩放 / 旋转 / 倾斜

位移:

改变元素在页面的位置,大小,角度以及形状的一种方式

2D转换:只在 X 轴和 Y 轴上发生转换效果

3D转换:增加了 Z 轴的转换效果

转换属性

1:转换属性

属性:transform

取值:none: 默认值,无任何转换

transform-function : 表示1个或者多个转换函数,如果是多个转换函数的话,中间用空格隔开

例如:

 transform: rotate(-45deg)   translate(50px, 50px)
 /*元素逆时针 旋转 -45 度, 并且在 x 轴位移50px Y 轴 50px*/
/*中间用空格隔开,一个transform属性兼容多个取值时,一定要用空格,而不能用分号*/

2:转换原点

属性:transform - origin

取值:数值/百分比/关键字

 2个值:表示原点在 X 轴和 Y 轴上的位置

3个值:表示原点在 X 轴,Y 轴和 Z 轴上的位置

    默认原点在元素的中心位置

transform-origin: 50% 50%
/*默认原点在元素的中心位置*/

3:2D转换

位移:改变元素在页面中的位置

属性:transform

取值:1:translate (x)  

指定元素在 x 轴上的位移距离,取值为正,元素右移,取值为负,元素左移

2:translate (x, y)

 指定元素在的 x 轴 和 Y 轴的位置

 取值为正,元素右移,取值为负,元素左移

  #d1, #d2{
            width: 200px;
            height: 200px;
            background-color: yellow;
            position: absolute;
            top:0px;
            left:0px;
        }
        #d2{
            background-color: skyblue;
            transform: translate(50px, 50px); /*向右移动 50px, 向下移动50px*/
            opacity: 0.5; /*设置透明度,方便辨识*/
        }
    </style>
</head>
<body>
    <div id = "d1">参考元素</div>
    <div id = "d2">位移元素</div>

2:缩放(放大或缩小)

 属性: transform

 取值:1:scale (值)

横向或者纵向的缩放比例,默认值为1

 值大于1的时候是放大

 值小于1的时候是缩小

负数:放大(水平和垂直都翻转180度)

 2:scale (x, y)

 x:表示横向的缩放比例

 y:表示纵向的缩放比例

3:单向缩放函数

 scale  (x);

 scale  (y);

div{
			width: 200px;
			height: 200px;
			background-color: yellow;
			position: absolute; 
			top:0px;
			left:0px;
		}
		#d2{
			background-color: skyblue;
			opacity: 0.5;
			transform: translate(50px, 50px); /*元素位置进行位移*/
		}
		#d2:hover{
		
			transform:scale(1.5);  /*元素放大1.5倍*/

		}

4:旋转

 rotate (值 deg)

取值为正,顺时针旋转,取值为负,逆时针旋转

     transform:rotate(45deg); /*元素 顺时针 旋转 45度*/

多个 transform 属性一起写时,要用空格空开才生效

 #d2:hover{
    transform: rotate(-45deg)
    translate(50px, 50px)     /*元素逆时针 旋转 -45 度, 并且在 x 轴位移50px Y 轴 50px*/
    }

  5:倾斜

 改变元素在页面中的形状

语法: transform

 取值:1:skewX (x deg)

 让元素向着 x 轴产生倾斜,实际改变的是 y 轴的倾斜角度

 x 取正值, y轴逆时针倾斜

 x 取负值, y轴顺时针倾斜

2:skewY (y deg)

 让元素向着 Y 轴产生倾斜,实际改变的是 X 轴的倾斜角度

 Y 取正值, X轴逆时针倾斜

 Y 取负值, X轴顺时针倾斜                                                      

 3:skew (x deg) 等同于 skewX(deg)

4:skew (x deg,  y deg) 

 <style>
        #d1{
            width: 200px;
            height: 200px;
            background-color: skyblue;


        }
        #d1:hover{
            transform: translate(100px, 100px)    
            rotate(135deg) skewX(45deg) scale(1.5);
            /*向下移动200px, 向右200px 逆时针旋转135度, 逆时针倾斜45度, 放大1.5倍*/
        }
    </style>
</head>
<body>
    <div id = "d1">转换效果</div>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值