美文网首页
修改checkbox默认样式

修改checkbox默认样式

作者: Homary | 来源:发表于2018-07-03 10:08 被阅读0次

利用CSS3伪类修改CheckBox样式

  • 下面是html代码
<div>
    <input type="checkbox" id="checkbox"/>
    <label for="checkbox">登陆</label>
</div>
  • CSS 代码
        #checkbox{
            width: 15px;
            height: 15px;
            margin-left: -15px;
            opacity: 0;
        }
        input[type="checkbox"] + label::before {
        content: '\a0'; /* non-break space */
        display: inline-block;
        vertical-align: center;
        width: 15px;
        height: 15px;
        margin-right: 10px;
        border-radius: 3px;
        background: silver;
        text-indent: 2px;
        line-height: 1;
        }
        input[type="checkbox"]:checked + label::before {
        content: '\2713';
        background: yellowgreen;
        }
        input[type="checkbox"]:focus + label::before {
        //box-shadow: 0 0 .1em .1em #58a;
        }
        input[type="checkbox"]:disabled + label::before {
        background: gray;
        box-shadow: none;
        color: #555;
        }

实现原理,将checkbox隐藏.用label:before伪造一个checkbox;
选中checkbox时,用checkbox:checked 与 label:before 添加选中样式
选中之后点击, 利用checkbox:disabled 与 label:before 将伪造的checkbox置为非选中状态

相关文章

网友评论

      本文标题:修改checkbox默认样式

      本文链接:https://www.haomeiwen.com/subject/ollduftx.html