样式选项标签

时间:2016-02-19 07:52:27

标签: java css drop-down-menu

我有一个包含选项的下拉列表。我想部分打破&加粗一些文本以及插入上下文中断。我尝试使用CSS以及HTML标签,但我无法得到它。有人可以建议一个解决方案? 提前致谢

1 个答案:

答案 0 :(得分:10)

我知道这个问题有点旧(或者至少不是新的),但我想展示一种非常简单的方法来模拟一个select元素,而不是像{{3}中所建议的那样使用“替换插件” }。

可能有很多,很多方法可以做到这一点,但我试着让事情变得非常简单,所以我的模拟方法只使用CSS。它是相当简单的骨头,但我想指出这样做并不复杂,你可能不需要插件就可以了。

注1:我使用<option>而不是<label>。由于<label>是一个交互元素,因此在内部放置一些交互式内容(如<button>)可能会搞砸它。无论如何,选项通常都是非交互式的,但请注意,这种简单的仿真无法完成所有工作。

注2:如果您希望能够选择多个选项,只需搜索“radio”并替换为“checkbox”。

How to style the option of a html “select”?

input[type="radio"] {
  display: none;
}

input[type="radio"]:checked + label {
  background-color: black;
  color: #28AADC;
}

/* none functional styles.  just regular styling */
.radio_select {
  background-color: #28AADC;
  display: inline-block;
}
<div class="radio_select">
  <div>
    <input id="rad1" type="radio" name="radio_select" />
    <label for="rad1">Option 1</label>
  </div>

  <div>
    <input id="rad2" type="radio" name="radio_select" checked="checked" />
    <label for="rad2">Option 2</label>
  </div>
  
  <div>
    <input id="rad3" type="radio" name="radio_select" />
    <label for="rad3">Option 3</label>
  </div>
</div>

Emulating Select Using Radio - No Collapse

注意:这不适用于移动设备,因为它使用:hover

input[type="radio"] {
  display: none;
}

/* style this to your heart's content */

input[type="radio"] + label {
  display: none;
}

input[type="radio"]:checked + label {
  background-color: black;
  color: #28AADC;
  display: inline-block;
}

.radio_select:hover label {
  display: inline-block;
}


/* none functional styles.  just regular styling */

.radio_select {
  background-color: #28AADC;
  display: inline-block;
}
<!-- NOTE:  This technique uses hover, so it won't work for mobile devices.
  I couldn't think of a pure CSS way to solve that.  Sorry. -->

<div class="radio_select">
  <div>
    <input id="rad1" type="radio" name="radio_select" />
    <label for="rad1">Option 1</label>
  </div>

  <div>
    <input id="rad2" type="radio" name="radio_select" />
    <label for="rad2">Option 2</label>
  </div>

  <div>
    <input id="rad3" type="radio" name="radio_select" checked="checked" />
    <label for="rad3">Option 3</label>
  </div>
</div>