在css中,可以使用transfrom属性的scale()方法设置缩放,语法格式为“transfrom:scale(方向)”。scale()方法用于修改元素的大小,通过向量形式定义的缩放值来放大或缩小元素,同时可在不同方向设置不同缩放值。
本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。
在CSS3中,我们可以使用transform属性的scale()方法来实现元素的缩放效果。缩放,指的是“缩小”和“放大”的意思。
语法:
transform: scaleX(x); /*沿X轴方向缩放*/ transform: scaleY(y); /*沿Y轴方向缩放*/ transform: scale(x, y); /*沿X轴和Y轴同时缩放*/
说明:
缩放有3种情况:scaleX()、scaleY()、scale()。参数x表示元素在x轴方向的缩放倍数,参数y表示元素在y轴方向的缩放倍数。
当x或y取值为0~1之间时,元素进行缩小;当x或y取值大于1时,元素进行放大。大家思考一下“倍数”的概念,很快就懂了。
举例:scaleX(x)
<!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title></title> <style type=text/css> /*设置原始元素样式*/ #origin { width:200px; height:100px; border:1px dashed gray; } /*设置当前元素样式*/ #current { width:200px; height:100px; color:white; background-color: rgb(30, 170, 250); opacity: 0.6; transform:scaleX(1.5); } </style> </head> <body> <div id=origin> <div id=current></div> </div> </body> </html>
浏览器预览效果如下图所示。
分析:
transform:scaleX(1.5);表示元素在x轴方向放大为原来的1.5倍。如果把1.5改为0.5,则元素会在x轴方向缩小为原来的0.5倍,此时预览效果如下图所示。
实际上,transform:scaleX(1.5);其实可以等价于transform:scale(1.5, 0);,小伙伴们可以自行测试一下。
举例:scaleY(y)
<!DOCTYPE html><html> <head> <meta charset=utf-8 /> <title></title> <style type=text/css> /*设置原始元素样式*/ #origin { width:200px; height:100px; border:1px dashed gray; } /*设置当前元素样式*/ #current { width:200px; height:100px; color:white; background-color: rgb(30, 170, 250); opacity: 0.6; transform:scaleY(1.5); } </style> </head> <body> <div id=origin> <div id=current></div> </div> </body> </html>
浏览器预览效果如下图所示。
分析:
transform:scaleY(1.5);表示元素在y轴方向放大为原来的1.5倍。如果把1.5改为0.5,则元素会在y轴方向缩小为原来的0.5倍,此时浏览器预览效果如下图所示。
实际上,transform:scaleY(1.5);其实可以等价于transform:scale(0, 1.5);,小伙伴们可以自行测试一下。
举例:scale(x, y)
<!DOCTYPE html><html> <head> <meta charset=utf-8 /> <title></title> <style type=text/css> /*设置原始元素样式*/ #origin { width:200px; height:100px; border:1px dashed gray; } /*设置当前元素样式*/ #current { width:200px; height:100px; color:white; background-color: rgb(30, 170, 250); opacity: 0.6; transform:scale(1.2, 1.5); } </style> </head> <body> <div id=origin> <div id=current></div> </div> </body> </html>
浏览器预览效果如下图所示。
分析:
transform:scale(1.2, 1.5);表示元素在x轴和y轴两个方向上同时放大,x轴方向放大为原来的1.2倍,y轴方向放大为原来的1.5倍。实际上,transform:scale(1.2, 1.5);其实可以等价于以下代码:
transform:scaleX(1.2); transform:scaleY(1.5);
推荐学习:css视频教程
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。