CSS实现按钮点击水波纹效果

CSS实现按钮点击水波纹效果

2018-06-15 / 0 评论 / 152 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年11月03日,已超过904天没有更新,若内容或图片失效,请留言反馈。

html

<button class="btn btn-default btn-lg ripple">Button Ripple</button>
<button class="btn btn-default btn-lg boom">Button Boom</button>

css

.ripple {
    position: relative;
    //隐藏溢出的径向渐变背景
    overflow: hidden;
}
.ripple:after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    //设置径向渐变
    background-image: radial-gradient(circle, #666 10%, transparent 10.01%);
    background-repeat: no-repeat;
    background-position: 50%;
    transform: scale(10, 10);
    opacity: 0;
    transition: transform .3s, opacity .5s;
}
.ripple:active:after {
    transform: scale(0, 0);
    opacity: .3;
    //设置初始状态
    transition: 0s;
}
.boom {
    position: relative;
    //此处不需要设置overflow:hidden,因为after元素需要溢出显示
}
.boom:focus{
    outline: none;
}
.boom:after {
    content: "";
    display: block;
    position: absolute;
    //扩大伪类元素4个方向各10px
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    pointer-events: none;
    background-color: #333;
    background-repeat: no-repeat;
    background-position: 50%;
    opacity: 0;
    transition: all .3s;
}
.boom:active:after {
    opacity: .3;
    //设置初始状态
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: 0s;
}

效果

0

评论 (0)

取消