使用 CSS 更改 IE8 中禁用的 HTML 控件的颜色
您已尝试使用 CSS 更改禁用的输入控件的颜色,但是IE8下好像不行。您想了解原因并找到一种方法来覆盖默认行为。
您使用过的 CSS:
<code class="css">input[disabled='disabled'] { color: #666; }</code>
在大多数浏览器中运行良好,但在 IE8 中不起作用。这是因为 IE8 对禁用元素有一个特定的行为,它用默认的灰色覆盖颜色属性,并伴有奇怪的白色阴影。
这样做的原因是 IE8 中的禁用元素被认为是是“非活动”控件,浏览器会向它们应用特定的样式来指示这一点。不幸的是,这种样式包含强制的文本灰色,它会覆盖您尝试应用的任何 CSS。
避免这种行为并更改 IE8 中禁用控件的颜色的唯一方法是使用不同的方法。一种可能的解决方案是使用 :disabled 伪类而不是禁用属性:
<code class="css">input:disabled { color: #666; }</code>
此伪类针对设置了禁用属性的元素,但它实际上并未设置禁用属性本身。因此,IE8 不再将控件视为“不活动”,并允许您覆盖默认样式。
以上是为什么我无法使用 CSS 更改 IE8 中禁用的 HTML 控件的颜色?的详细内容。更多信息请关注PHP中文网其他相关文章!