CSS
函数scale()
主要是为了实现元素的放大和缩小效果,使用的是元素的变换效果。使用的是元素的转换属性:transform
的,该函数可以实现指定X轴和Y轴的放大、缩小效果。除此之外,我们还可以通过如下两种方式实现指定方向的转换:
scalex()
:指定X轴方向的元素放大或者缩小scaley()
:指定Y轴方法的元素放大或缩小scalez()
:指定Z轴方法的元素放大或缩小scale3d()
:定义了一个在3D
空间中调整元素放大或缩小
scale函数
scale()
CSS
函数定义了一个在 2D
平面上调整元素大小的变换。因为缩放量是由向量定义的,所以它可以在不同的比例下调整水平和垂直维度的大小。代码格式如下:
scale(sx)
scale(sx, sy)
代码示例如下:
<style>.container .scale > div > .result {transform: scale(.8,2);}
</style><div class="scale"><h3>scale函数使用</h3><div><div class="original ">original container</div><div class="result">scale(0.8,2) container</div></div></div>
显示结果:
scale3d函数
scale3d()
CSS
函数定义了一个在 3D
空间中调整元素大小的转换。因为缩放量是由向量定义的,所以它可以在不同的比例下调整不同维度的大小。语法格式如下:
scale3d(sx, sy, sz)
- sx:数字类型,表示缩放向量的横坐标。
- sy:数字类型,表示缩放向量的纵坐标。
- sz:数字类型,表示缩放向量的 z 分量的数字。
代码示例:
<style>
.container .scale3d {margin-top: 80px;
}.container .scale3d>div>div {display: inline-block;padding: 30px;background-color: aqua;
}.container .scale3d>div>.result {transform: perspective(300px) scale3d(2, 0.8, 0.4) translateZ(100px);transform-origin: left;background-color: red;margin-left: 60px;
}
</style><div class="scale3d"><h3>scale3d函数使用</h3><div><div class="original ">
Original Text
</div><div class="result">
scale3d Text
</div></div>
</div>
显示结果:
scalex函数
scaleX() CSS
函数定义了一个沿 x 轴
(水平)调整元素大小的转换。它用常数因子修改每个元素点的横坐标,除非比例因子为 1
,在这种情况下函数是恒等变换。缩放不是各向同性的,单元的角度不守恒。 scaleX(-1)
定义轴对称,垂直轴穿过原点(由 transform-origin
属性指定)。scaleX(sx)
等价于 scale(sx, 1)
或 scale3d(sx, 1, 1)
。
代码格式如下:
<style>
.container .scalex>div>div {display: inline-block;padding: 30px;background-color: aqua;
}
.container .scalex>div>.result {background-color: red;transform: scaleX(1.6);transform-origin:left ;
}
</style><div class="scalex"><h3>scalex函数使用</h3><div><div class="original "> Original Text</div><div class="result">scalex Text</div></div>
</div>
显示结果:
scaley函数
scaleY()
CSS
函数定义了一个沿 y 轴
(垂直)调整元素大小的转换。它通过常数因子修改每个元素点的纵坐标,除非比例因子为 1
,在这种情况下函数是恒等变换。缩放不是各向同性的,单元的角度不守恒。 scaleY(-1)
定义轴对称,水平轴穿过原点(由 transform-origin
属性指定)。
代码格式如下:
<style>.container .scaley>div>div {display: inline-block;padding: 30px;background-color: aqua;}.container .scaley>div>.result {background-color: red;transform: scaleY(1.6);transform-origin:left ;}
</style><div class="scaley"><h3>scaley函数使用</h3><div><div class="original "> Original Text</div><div class="result">scaley Text</div></div></div>
显示结果:
scalez函数
scaleZ()
CSS
函数定义了一个沿 z 轴
调整元素大小的转换。此缩放变换通过常数因子修改每个元素点的 z
坐标,除非缩放因子为 1
,在这种情况下,函数是恒等变换。缩放不是各向同性的,单元的角度不守恒。 scaleZ(-1)
定义轴对称,z 轴
穿过原点(由 transform-origin
属性指定)。
示例代码:
<style>.container .scalez>div>div {display: inline-block;padding: 30px;background-color: aqua;}.container .scalez>div>.result {background-color: red;transform: perspective(400px) scaleZ(2) translateZ(-100px);transform-origin:left ;}
</style><div class="scalez"><h3>scalez函数使用</h3><div><div class="original "> Original Text</div><div class="result">scalez Text</div></div></div>
显示结果:
示例代码:CSS scale函数使用示例