<option>中的应用样式=“显示:无”不在IE中工作但工作在Mozilla </option>

时间:2011-03-03 22:15:49

标签: html

我尝试在(例如<option value="test" id="test" style="display:none;">test</option>)中应用style =“display:none”,这在Mozilla中完全正常,但在IE中却没有。有谁知道那里出了什么问题?另外,无论如何我可以在<option> ??

中应用样式显示无

5 个答案:

答案 0 :(得分:4)

没有什么是错的;这就是IE的行为方式。你可以对个别选项做很多样式。

如果您不希望它在select中显示,最好使用JavaScript完全从select元素中删除该选项。

答案 1 :(得分:0)

Internet Explorer(遗憾地)不会隐藏选项元素。

但是,您可以将列表内容存储在其他位置并删除()它。如果需要,稍后从列表中恢复。

答案 2 :(得分:0)

选项是选择标记的一部分,并非所有浏览器都支持使用css隐藏选项。如果您愿意,请尝试完全删除该选项并稍后再添加。

答案 3 :(得分:0)

对于那些在受影响的版本中需要处理隐藏选项元素的人,我在这里发布了一个解决方法,它不会克隆或删除选项,但会包围它们,这可以说更容易处理:

http://work.arounds.org/issue/96/option-elements-do-not-hide-in-IE/

答案 4 :(得分:0)

更准确的答案&#34;为什么样式属性不适用于IE&#34;是 - 这取决于IE的版本和您使用的浏览器!

并非所有类型的显示都适用于所有浏览器,您只需尝试其中每个浏览器以找出适合您浏览器的浏览器,或者您甚至必须测试您的应用在您的浏览器中运行的浏览器代码。

enter image description here

请参阅下面的示例:javascript&#34; .display =&#39; inline&#39;&#34;仅适用于IE 8及更高版本。

<script type="text/javascript">
function f_ToggleCheck(sender, rowN, obj2) {
    if (sender.checked) {
        sender.value = "checked";
        obj2[rowN].style.display = "inline";
    } else {
        sender.value = "";
        obj2[rowN].style.display = "none";
    }
    alert(obj2[rowN].style.display);
}
</script>

<table>
    <tr>
        <td>
            <input name="R_CheckValue" type="checkbox" onclick="f_ToggleCheck(this, 2, R_DateValue)" value="checked" checked="" />
            <input name="R_DateValue" value="2015-05-30" style="display: inherit" size="7" />
        </td>
    </tr>
</table>