加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

用CSS怎样圆满实现选择后打钩的效果?

发布时间:2023-08-09 14:29:07 所属栏目:语言 来源:
导读:在实际的项目中,我们常会遇到div的需求,为了体现用户选中,一般会有一个打钩标志,这篇我们就来了解一下如何实现选择右下角出现对号打钩的效果,实现效果及代码如下,感兴趣的朋友可以参考。

css:

.s_
在实际的项目中,我们常会遇到div的需求,为了体现用户选中,一般会有一个打钩标志,这篇我们就来了解一下如何实现选择右下角出现对号打钩的效果,实现效果及代码如下,感兴趣的朋友可以参考。
 
    css:
 
.s_type {
 
    border: none;
 
    border-radius: 5px;
 
    background-color: #f3f3f3;
 
    padding: 7px 0;
 
    color: #606266;
 
    margin: 5px 2.5% 5px 0;
 
    width: 30%;
 
    position: relative;
 
}
 
.selecd {
 
    background-color: #ebf3ff;
 
    color: #5999fc;
 
}
 
.select {
 
    background-color: #ebf3ff;
 
    color: #5999fc;
 
}
 
.select:before {
 
    content: '';
 
    position: absolute;
 
    right: 0;
 
    bottom: 0;
 
    border: 9px solid #5999fc;
 
    border-top-color: transparent;
 
    border-left-color: transparent;
 
}
 
    html:
 
<button class="s_type">全部</button>
 
<button class="s_type">2020年夏季</button>
 
    js:
 
$(’.s_type’).on(‘click’,function(){
 
$(this).toggleClass(‘select’);
 
});
 
    1:设计好按钮本身的样式(.s_type)
 
    2:将要加的样式另写一个类名(.selecd )
 
    3:通过点击事件将元素添加样式
 
    刚开始想过挺多方法的,比如直接在伪类里content: ‘’;但这样的话出的效果就是对号没有背景颜色,直接白了一块,这样不行。还想到要不直接把UI的图抠出来,当背景或者图片直接浮在按钮上面,后面想想这样不太对。然后我就先去做别的功能,把其他功能写出来再弄这个。就刚好看到一篇文章跟我需要的功能一样,就直接按照这篇博客写了。。。然后效果出来了哈哈哈哈
 
    后面去看UI库之类的发现QQ的UI库还有专门角标设计(地址)
 
    在网上找了一下,思路其实就是对矩形进行变形处理,通过伪元素实现下标 css样式:
 
.select {
 
position: relative;
 
width:81px;
 
height:93px;
 
margin: 0 auto;
 
text-align: center;
 
line-height: 93px;
 
color: #4ABE84;
 
background-color: #fff;
 
box-shadow:0px 2px 7px 0px rgba(85,110,97,0.35);
 
border-radius:7px;
 
border:1px solid rgba(74,190,132,1);
 
}
 
.select:before {
 
content: '';
 
position: absolute;
 
right: 0;
 
bottom: 0;
 
border: 17px solid #4ABE84;
 
border-top-color: transparent;
 
border-left-color: transparent;
 
}
 
.select:after {
 
content: '';
 
width: 5px;
 
height: 12px;
 
position: absolute;
 
right: 6px;
 
bottom: 6px;
 
border: 2px solid #fff;
 
border-top-color: transparent;
 
border-left-color: transparent;
 
transform: rotate(45deg);
 
}
 
    然后是我们通过使用div来展示效果:
 
<div class="select">测试</div>
 
    完成。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章