之前发过一篇文章 CSS 实现优惠券的技巧,次要介绍了几种绘制优惠券的办法,只管实现曾经十分完满、非常灵活,不过还是有很多同学示意
“ 太奇妙了,不过我还是抉择切图🤣”
为此,专门制作了这样一个在线 CSS 生成工具 Coupon.io (codelabo.cn)
功能设计
首先最下面是几种优惠券的类型,从图标应该能大略看出具体的款式
每一种类型对应的自定义选项稍有不同,拿第一种类型举例来说
- Radius示意设置凹角的 大小
- Direction示意设置凹角的 方向,可抉择程度和垂直
- Position示意设置凹角的 绝对地位 ,在程度状况下,可抉择 居上、居中、居下 ,在垂直状况下,可抉择 居左、居中、居右
- Offset示意示意设置凹角的 偏移,这个偏移是绝对于下面设置的绝对地位来定的,在居中的状况下不可设置
调整实现后,点击复制按钮就能够复制在剪贴板上了(🎉 Copied to clipboard!)~
代码是自适应的,所以无需关注容器尺寸,兼容 Chrome、Firefox、Safari 以及挪动端
其实也不用看下面的阐明,动动手指,轻易点一下、拖一下 大略就能明确什么意思了。
实战演示
当初就理论演示一下,比方这样一个布局
首先实现根本布局
<section class="card">
<div class="card-left">350 书券 </div>
<div class="card-right">
<p class="card-info"> 满 30 元送 350 书券 </p>
<strong class="card-time"> 仅剩 04:48:49</strong>
</div>
</section>
能够看出,右边是固定尺寸,左边是自适应的,这里能够采纳 flex 布局
.card{
display: flex;
align-items: center;
background: #fff;
border-radius: 8px;
}
.card-left{
width: 88px;
text-align: center;
font-size: 24px;
color: #F22424
}
.card-left span{font-size: 10px;}
.card-right{
padding: 16px 12px;
display: flex;
flex: 1;
flex-direction: column;
}
.card-info{
margin: 0;
font-size: 14px;
line-height: 20px;
color: rgba(33, 32, 44, 0.9);
}
.card-time{
font-size: 12px;
line-height: 16px;
font-weight: normal;
color: #F22424;
margin-top: 4px;
}
失去的成果如下
当初就通过在线工具增加凹角成果吧
因为有分割线成果,能够抉择第二个类型,一番调试后,能够失去如下
当初复制生成的 CSS,间接增加在外层容器上
.card{
/* 其余款式 */
-webkit-mask-image: radial-gradient(circle at 88px 4px, transparent 4px, red 4.5px), radial-gradient(closest-side circle at 50%, red 99%, transparent 100%);
-webkit-mask-size: 100%, 2px 4px;
-webkit-mask-repeat: repeat, repeat-y;
-webkit-mask-position: 0 -4px, 87px;
-webkit-mask-composite: source-out;
mask-composite: subtract;
}
失去成果如下
线上可拜访 codepen coupon demo 查看
其余个性
该站点是一个PWA,如果应用 Chrome 或者 Edge 关上,能够抉择“装置利用”
这样就能够像一个应用程序一样关上了,可离线应用~
其余阐明
工具究竟只是工具,不可能满足所有理论状况,在不满足的状况下,倡议好好浏览这篇 CSS 实现优惠券的技巧,置信会有更多的领会
最初,有相干问题或意见,能够去 XboxYan/coupon: 🎫 Generate Coupon-UI CSS code (github.com)提 issue,如果感觉不错的话,欢送点赞、珍藏、转发~❤️❤️❤️
祝大家应用欢快,enjoy~