我使用此代码在ie8和ie9中设置样式,但这不起作用。
<!--[if lt IE 8,9]>
<link href="~/Styles/ie8-9.css" type="text/css" rel="stylesheet" />
<![endif]-->
但是这段代码运作正常:
<!--[if lt IE 8,9]>
<style>
body{color:red;}
</style>
<![endif]-->
如何解决第一种情况?
答案 0 :(得分:0)
在您的html页面顶部添加<!DOCTYPE html>
,如果没有,它将起作用
试试这个:
*::-ms-backdrop, body{color:red !important;}
答案 1 :(得分:0)
我认为问题在于ie8-9.css
的路径是错误的。检查控制台是否有任何错误。
也许这篇文章对你很有意思: slash(/) vs tilde slash (~/) in style sheet path in asp.net
此外,而不是
<!--[if lt IE 8,9]>
我建议你写一下
<!--[if (IE 8)|(IE 9)]>
如果你只想在IE 8和9中使用样式表。我不确定你使用的语法是否正确。
也许你在IE 8和9中每页最多可以达到31个样式表。
不要使用像IETester这样的工具进行测试,因为它们不是真正的浏览器。转到modern.ie并下载虚拟机以测试您的网站。
其他资源:
答案 2 :(得分:0)
lt
表示“小于”。您正在寻找的是一个条件语句,如果浏览器等于 IE 8或IE 9,则需要执行以下操作:
<!--[if IE 8]>
<link href="~/Styles/ie8-9.css" type="text/css" rel="stylesheet" />
<![endif]-->
<!--[if IE 9]>
<link href="~/Styles/ie8-9.css" type="text/css" rel="stylesheet" />
<![endif]-->