样式部分的OPTION文本

rla*_*ter 32 html css

我有一个包含多个OPTION元素的SELECT列表.这是我对选项文本的一部分样式的天真方法:

<select name="color">
<option value="0">red <span style="font-weight: bold;">SLOW</span></option>
<option value="1">blue <span style="font-weight: bold;">SLOWER</span></option>
<option value="2">green <span style="font-weight: bold;">SLOWEST</span></option>
</select>
Run Code Online (Sandbox Code Playgroud)

这不起作用:浏览器不喜欢OPTION元素中的SPAN元素.

是否有其他方式来设置OPTION元素文本的一部分?

clu*_*ess 12

但您始终可以创建自定义选择框.请参考下面的jsFiddle,

JSFiddle用于多种颜色的选择框选项

// Insert a list item into the unordered list for each select option
for (var i = 0; i < numberOfOptions; i++) {
    $('<li />', {
        html: $this.children('option').eq(i).text()
        .split(' ').join(' <span style="color:red">'),
            rel: $this.children('option').eq(i).val()
    }).appendTo($list);
}
Run Code Online (Sandbox Code Playgroud)


Ms2*_*ger 8

不.options以平台原生的方式设计样式,仅仅样式的一部分样式不起作用.(通常也不是特别好的主意.)

  • 我不认为这种反应是100%准确的,也没有提供任何事实上的支持,为什么实现问题者想做的事情不是一个好主意.可以在下面找到更有用的响应. (10认同)
  • 无用的答案! (3认同)

Kir*_*rby 8

或者你可以使用Bootstrap Drop Downs和几行Javascript来实现.

这是Bootstrap示例,稍加改动,加上'lil Javascript:

$(function() {
   $('#my-select').find('li').click(function() {
      $('#selected').html($(this).html());
   });
});
Run Code Online (Sandbox Code Playgroud)
<head>
      <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js" type="text/javascript"></script>
    <script class="cssdeck" src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.1/js/bootstrap.min.js"></script>
</head>
<body>
<!-- Single button -->
<div id='my-select' class="btn-group">
  <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
    <span id="selected">Action</span> <span class="caret"></span>
  </button>
  <ul class="dropdown-menu">
    <li><a href="#">Action <span style='color:red'>like Super Man</span></a></li>
    <li><a href="#">Another action</a></li>
    <li><a href="#">Something else here</a></li>
    <li role="separator" class="divider"></li>
    <li><a href="#">Separated link</a></li>
  </ul>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)