Javascript 在html选择标记中,如何更改封闭选项标记的部分文本的样式?

Javascript 在html选择标记中,如何更改封闭选项标记的部分文本的样式?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,给定以下HTML代码: <select> <option>yellow</option> <option>red</option> <option>blue</option> </select> 例如,更改文本蓝色中第二个字符的颜色 <select> <option id='option1'>yellow</option> <option

给定以下HTML代码:

<select>
  <option>yellow</option>
  <option>red</option>
  <option>blue</option>
</select>
例如,更改文本蓝色中第二个字符的颜色

<select>
  <option id='option1'>yellow</option>
  <option id='option2'>red</option>
  <option id='option3'>blue</option>
</select>
如果需要在动态中执行此操作,可以使用JQuery:

$("#option3").css("color", "blue");

我认为目前还没有一种方法可以在CSS或XHTML中实现这一点。正如DaneSoul所指出的,您可以自己为s设置样式,但不能单独为其中文本的不同部分设置样式

标记不能有文本节点以外的任何子项


有更多信息,证实了这一点。

唯一可以做到的方法是创建自己的下拉列表,其中包含div、span,可能有一两个UL,还有一点JavaScript,类似于CSS下拉导航菜单cxuld,我想然后使用JavaScript设置要发送给表单的值


可能要做的工作太多了。

@BoltClock:你真的添加了下面的html代码中的句子:?还是修订历史在撒谎?@thirtydot对我说了同样的话……哈哈!在max中,您可以使用第n个childx设置第n个选项的样式,我认为您无法在该选项中设置特定字母的样式。除非您愿意尝试自定义下拉列表。。但它们不会像乔纳森指出的那样是真正的复制品。@thirtydot:不,很明显,在我修正降价的时候,OP让忍者出于任何原因把它删掉了。系统需要了解版本合并。耶,我现在看到我的unswer不是真正的任务是什么。。。“但我想这还是有帮助的。”丹内苏尔我几乎也这么做了,但不知怎的注意到了第二个角色。。并留下了一条评论:阅读他想要的问题是改变蓝色文本中第二个字符的颜色,而不是改变蓝色文本的颜色。耶,我没有回答,然后看到了这个细节…哦,等等。。您可以使用第n个child select:nth-child2{color:blue;}来代替为每个选项设置class/id的痛苦:P select:nth-child2与select:nth-child2不同
$("#option3").css("color", "blue");