我不想对整个文字进行着色,而是要在下拉列表中为每个单词着色..这似乎不起作用?
<select>
<option> Entry <span style="color:red">One</span> </option>
<option> Entry <span style="color:red">Two</span> </option>
<option> Entry <span style="color:red">Three</span> </option>
</select>
答案 0 :(得分:3)
使用原生<select>
元素无法做到这一点。
您只能通过在color
标记上设置CSS <option>
属性来为整个选项着色。
在下拉框中使用“丰富”内容的常见解决方法是将其替换为基于JS的内容(即下拉列表只是包含元素列表的div)。
答案 1 :(得分:0)
是的,你不能像@ThiefMaster那样选择<select>
元素。但是你总是可以创建一个无序列表来创建一个下拉列表(甚至是div)。我通常用<ul>
制作并使用jQuery或CSS过渡动画。
我创建了一个示例下拉列表。代码在下面或访问JS Fiddle。 click here
以下是代码。
<强> HTML 强>
<ul>
<li><a href="#">About</a>
<ul>
<li><a href="#">History</a></li>
<li><a href="#">Team</a></li>
<li><a href="#">Offices</a></li>
</ul>
</li>
<强> CSS 强>
ul li{width: 100px;}
ul li a{
background: red;
padding: 5px;
display: block;
border-bottom: 1px solid black;
}
ul li ul li:first-child a{
color: white;
}
ul li ul li{
height: 0;
}
ul li:hover ul li{height: 100%;}