Css3新特性应用之形状总结
前端  /  管理员 发布于 7年前   164
一、自适应椭圆
border-radius特性:
示例代码:
.wrap{border-radius: 50% / 30%;width: 60px;height: 80px;background: yellow; } .wrap02{width: 60px;height: 80px;background: yellow;border-radius: 50% / 100% 100% 0 0; } .wrap03{width: 60px;height: 80px;background: yellow;border-radius: 100% 0 0 0; }
二、平形四边形
.wrap{width: 80px;height: 40px;transform: skewX(-45deg);background: yellow; } .wrap>div{transform: skewX(45deg); } .btn{position: relative;padding: 10px; } .btn:before{content: '';position: absolute;top: 0px;left: 0px;right: 0px;bottom: 0px;z-index: -1;background: #85a;transform: skewX(-45deg); }
三、菱形
.wrap{width: 200px;transform: rotate(-45deg);overflow: hidden; } .wrap > img{transform: rotate(45deg) scale(1.42); max-width: 100%; }
四、切角效果
.wrap{width: 200px;height: 100px;background: #58a;background: linear-gradient(-135deg, transparent 15px, #58a 0px) top right,linear-gradient(135deg,transparent 15px, #655 0px) top left,linear-gradient(-45deg, transparent 15px, #58a 0px) bottom right, linear-gradient(45deg, transparent 15px, #655 0px) bottom left;background-size: 50% 50%;background-repeat: no-repeat; }
.wrapSvg{border:15px solid transparent;border-image: 1 url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="3" height="3" fill="%2358a"><polygon points="0,1 1,0 2,0 3,1 3,2 2,3 1,3 0,2"/></svg>');margin-top: 50px;width: 200px;height: 100px; background: #58a;background-clip: padding-box; }
其他方案
五、梯形图案
了解transform的基本原理
a和d表示缩放且不能为0;c和b控制倾斜;e和f控制位移
上述值的应用都与transform-origin的值有关系,他是定位元素旋转的原点,可以是top,bottom,center等,可以指定x,y,z三种坐标系
perpective:透视,不可以负数,0或百分比,只能是数值;
六、简单的饼图
动画饼图,效果如下:
实现步骤如下:
画出一个yellowgreen的圆,并利用linear-gradient设置background-image的值,实现两种颜色各显示一半的功能:
然后加入一个伪元素,继承父级(真实元素)的背景色,然后用rotate旋转即可
动画展示代码如下:
@keyframes spin{to{ transform: rotate(.5turn); } } @keyframes bg{50%{ background-color: #655; } } .wrap{width: 100px; height: 100px;border-radius: 50%;background: yellowgreen;background-image: linear-gradient(to right, transparent 50%, #655 0); } .wrap::before{content: '';display: block;margin-left: 50%;background-color: inherit;height: 100%; border-radius: 0 100% 100% 0 / 50%;transform-origin: left;animation:spin 3s linear infinite, bg 6s step-end infinite; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号