通过CSS设置选定的选项?
问题描述:
是否可以通过CSS类来设置option
标记的selected
属性?通过CSS设置选定的选项?
我想知道如果像下面是可能的样式表:
option.selected {
selected: true;
}
然后在HTML:
<option class="selected">
这将作为设置selected
属性相同的效果。这种技术可行吗?
答
不,CSS只改变了表示,而不是内容(尽管CSS3确实支持对内容进行一些修改,但不支持值的选择)。如果不能直接修改HTML,则需要使用JavaScript。
答
如果你使用JQuery,那么你可以沿着这些线做非常多的事情,但不是自己的CSS。
答
不通过CSS,但它可以通过JavaScript来完成。
function setSelects() {
var allSelects = document.getElementsByTagName("select");
for (var i = 0; i < allSelects.length; i++) {
for (var j = 0; j < allSelects[i].options.length; j++) {
if (allSelects[i].options[j].className == "selected") {
allSelects[i].selectedIndex = j;
}
}
}
}
window.onload = setSelects;
正如其他人指出的,我不确定为什么你想通过CSS类来做到这一点。
答
option[selected] {background-color:skyblue;color:white;}
如果你想显示上标明的选择 - 从用户的变化的影响无关显示结果后,选择的老留sykblue,新变化是darkblue。
答
是的,它是可能的,但我不知道IE
下面的代码将改变样式默认选中项目。
<style>
option[selected="selected"] {
color:red;
font-weight:bold
}
</style>
<select>
<option value="1">Txt</option>
<option value="2" selected="selected">Another Txt</option>
</select>
这是我怀疑,谢谢你的确认。 – 2009-07-13 21:07:32