使用 CSS 更改 IE8 中禁用的 HTML 控件的颜色
您已尝试使用 CSS 更改禁用的输入控件的颜色,但是IE8下好像不行。您想了解原因并找到一种方法来覆盖默认行为。
您使用过的 CSS:
input[disabled='disabled'] {
color: #666;
}
在大多数浏览器中都能正常工作,但在 IE8 中则不行。这是因为 IE8 对禁用元素有一个特定的行为,它用默认的灰色覆盖颜色属性,并伴有奇怪的白色阴影。
这样做的原因是 IE8 中的禁用元素被认为是是“非活动”控件,浏览器会向它们应用特定的样式来指示这一点。不幸的是,这种样式包含强制的文本灰色,它会覆盖您尝试应用的任何 CSS。
避免这种行为并更改 IE8 中禁用控件的颜色的唯一方法是使用不同的方法。一种可能的解决方案是使用 :disabled 伪类而不是禁用属性:
input:disabled {
color: #666;
}
这个伪类以设置了禁用属性的元素为目标,但它本身并不实际设置禁用属性。因此,IE8 不再将控件视为“非活动”并允许您覆盖默认样式。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3