微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css如何实现点击改变颜色

方法:1、使用“:active”伪类,配合“:focus”伪类,只需要将“:active”伪类和“:focus”伪类设置相同背景颜色即可实现效果;2、使用tabindex属性控制次序,配合“:focus”伪类实现点击后变色,且不消失效果

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

可通过使用css伪类实现点击元素变色的效果,两个伪类是:active, :focus

1、:active:用于选择活动链接。当在一个链接上点击时,它就会成为活动的(激活的),:active选择器适用于所有元素,不仅限于链接a元素

:focus:用于选取获得焦点的元素。仅接收键盘事件或其他用户输入的元素允许 :focus 选择器。

由于上面的特性,如果想实现点击时变色效果,有以下两种方法,两者区别在

:active,元素被点击时变色,但颜色在点击后消失

:focus, 元素被点击后变色,且颜色在点击后不消失

<!DOCTYPE html> 
<html> 
<head> 
<Meta http-equiv=Content-Type content=text/html; charset=utf-8 /> 
<title>document</title> 
<style>
    button:active{
        background:olive;
    }
    button:focus{
        background:olive;
    }
</style>
</head> 
<body bgcolor=#ccc>
    <button>cmcc</button>
        
</body> 
</html>

效果

GIF.gif

2、由于div等元素无法接受键盘或其他用户事件,即不支持:focus伪类,可通过增加tabIndex属性使其支持:focus

<!DOCTYPE html> 
<html> 
<head> 
<Meta http-equiv=Content-Type content=text/html; charset=utf-8 /> 
<title>document</title> 
<style>
    div{
        background: #fff;
        border:1px solid rgb(59, 59, 59);
        border-radius: 5px;
        margin: 10px 0;
    }
    div:focus {
            background-color:red;
        }
</style>
</head> 
<body bgcolor=#ccc>
    <div tabindex=1>
        Section 1
        </div>
        
        <div tabindex=2>
        Section 2
        </div>
        
        <div tabindex=3>
        Section 3
        </div>
        
</body> 
</html>

效果

GIF.gif

推荐学习:css视频教程

原文地址:https://www.jb51.cc/css/1205947.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。