html - 如何在纯 CSS 中制作带有两个(独立)复选框的 HTML 选择字段

标签 html css checkbox html-select

我需要创建一个选择列表,其中每个元素都有两个复选框(或者,至少,一个可以采用 3 个值的复选框:“x”、“v”或“空白”)。

现在我使用选中的 CSS 并添加了 unicode 字符 2611/2610,但它只有两种可能的状态,而且如果我添加第二个复选框,它将随着点击切换。

这段代码是我目前的情况: CSS:

select.control option::before {
  content: "\2610"; /*2612 è la crocetta*/
  width: 1.3em;
  text-align: center;
  display: inline-block;
}

select.control option:checked::before {
  content: "\2611";
}

select.control[multiple]{
    overflow-y:scroll;
    min-height: 40px;
    max-height: 30%
}

HTML:

<html>
<head><link rel='stylesheet' href='my.css'></link></head>
<body>
  <fieldset class='field_set'> 
    <span class='field_span'>
      <label style='vertical-align: top;'>Postazioni</label>
      <select class='control' name="Choose values" multiple='multiple'>
        <option value='v1'>P 1</option>
        <option value='v2'>P 2</option>
        <option value='v3'>P 3</option>
      </select>
    </span>
  </fieldset>
</body></html>

这是输出: 所需:Desired 当前:Current

注意:显然我想获得第一个和第二个选择值。并且,如果可能,不要显示任何突出显示(选择就足够了)

最佳答案

我不认为你可以在不使用 javascript 的情况下将功能复选框放入选择输入中。最简单的方法可能是设置复选框列表的样式,使其像下拉菜单一样呈现。

简单的解决方案可能是只使用选项组并将您的多个复选框分解为单独的选择:

select {
width: 50%;
}
<form id="form1" class="example-form">
  <label>Option Groups
    <div>
      <select id="options" name="opt" placeholder="select one" required class="select-css">
      <option value="" disabled selected>Select One</option>
        <optgroup label="Giraffe">
          <option value="chk-green">Green Giraffe</option>
          <option value="chk-purple">Purple Giraffe</option>
          <option value="chk-both">Green &amp; Purple Giraffe</option>
        </optgroup>
        <optgroup label="Pangolin">
          <option value="png-orange">Orange Pangolin</option>
          <option value="png-pink">Pink Pangolin</option>
          <option value="png-both">Orange &amp; Pink Pangolin</option>
        </optgroup>
      </select>
    </div>
  </label>
</form>

关于html - 如何在纯 CSS 中制作带有两个(独立)复选框的 HTML 选择字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58972471/

相关文章:

javascript - 复选框的 jQuery onclick 错误

android - 如何将复选框添加到警报对话框

javascript - 将 javascript 生成的图像复制到剪贴板

javascript - 如何使 CSS 属性动画在 Safari 中像在 Google Chrome 中一样工作?

php - 接受上传的同名文件?

jquery模糊和取消模糊图像的一部分

javascript - 禁用的复选框上不显示 Bootstrap 弹出窗口

javascript - 为什么 Javascript 在 iPhone 上运行这么慢?

html - 怪癖模式与 2011 年相关吗?

html - 水印文本对 Angular 重复 css/html