• 纯 CSS 解决自定义 CheckBox 背景颜色问题


    CodePen

    需要使用色 #ec6337(当然可以是任意颜色),解决问题:记住密码定制 CheckBox,解释全在注释里

    未选中

    选中

    主要使用到 ::before 或 ::after 伪类处理,伪装成内部的那个勾

    • html
    <label>
      <input type="checkbox" /> // 注意嵌在 label 里面
      记住密码
      <div class="show-box" /> // 注意嵌在 label 里面
    </label>
    
    • CSS(LESS)
    label {
      position: relative;
      cursor: pointer;
    
      input {
        cursor: pointer;
      }
    
      input:checked + .show-box {
        background: #ec6337;
      }
    
      .show-box {
        position: absolute;
        top: 0;
        left: 0;
         16px;
        height: 16px;
        border-radius: 2px;
        border: 1px solid #d8d8d8;
        background: white; // 这里取个巧,与下面颜色一样而已
    
        &:before { // 使用了 absolute 所以无所谓是 before 还是 after
          content: ''; // 空白内容占位,当做盒模型处理,见下面
          position: absolute;
          top: 2px;
          left: 6px;
           3px; // 勾的短边
          height: 8px; // 勾的长边
          border: solid white; // 勾的颜色
          border- 0 2px 2px 0; // 勾的宽度
          transform: rotate(45deg); // 定制宽高加上旋转可以伪装内部的白色勾
        }
      }
    

    CodePen

  • 相关阅读:
    前端面试题
    Less 中的嵌套规则与 & 符号的使用
    组件的生命周期
    222
    221
    twemproxy代理memcache(3)
    memcache数据迁移与解决方案(2)
    mencache的原理与应用(1)
    yield推荐,理解协程的最佳入口
    上下文管理器的实现
  • 原文地址:https://www.cnblogs.com/ZweiZhao/p/7943849.html
Copyright © 2020-2023  润新知