我正在最终确定公司网站的代码,其中90%的用户正在浏览IE。除了IE7之外,我的条件语句适用于所有浏览器。我不确定为什么IE会忽略我为IE浏览器创建的单独样式表。请查看下面的代码。
这里的代码也是:
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" charset="utf-8" />
...允许我删除IE 7-9中的兼容模式。
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=EDGE" charset="utf-8" />
<tile>Company Site</title>
<link rel="stylesheet" href="css/style.css" media="screen" />
<!--[if IE]><link rel="stylesheet" href="css/ie.css"><![endif]-->
<!--[if IE 8]><link rel="stylesheet" href="css/ie8.css"><![endif]-->
<!--[if IE 7]><link rel="stylesheet" href="css/ie7.css"><![endif]-->
</head>
然后我的其余代码似乎工作并验证没有问题。似乎IE7被忽略了。
提前感谢您的帮助!
答案 0 :(得分:1)
您的X-UA-Compatible
标头是多余的。它的内容应该只是IE=edge
,或多或少。
对于样式表,您可以通过添加可见内容来测试是否正在处理评论,例如<script>alert("Hello!");</script>
(因为您在<head>
中,您不能只是放置纯文本在那里)。
如果您执行此操作并显示警报,那么您的CSS文件可能存在问题。要么它是404,要么你有特殊性问题(正如CrazyVipa建议的那样)。如果上述测试不确定,我们将需要更多信息进一步诊断。
答案 1 :(得分:0)
尼娜,
您应该检查日志以查看它是否在本地下载。可能看起来你的CSS没有被应用,但CSS规则可能被覆盖了。
例如,如果标准CSS文件具有:
#content-custom a {
color:#fff;
}
你的CSS条件有:
.custom a {
color:#000;
}
您的字体将显示为#fff。我没有听到或看到任何与条件陈述有关的实际错误。我注意到的唯一问题是人为错误。 (错误类型,权限,本地环境等)我的假设是CSS文件被覆盖。 CSS禁用?链接无效?
很抱歉这样说,但很有可能,这是你的错字。
答案 2 :(得分:0)
我不确定为什么它没有调用该文件,但可能是文件放错位置。您现在可以取出IE的行,只测试IE 7文件。
答案 3 :(得分:0)
看起来我必须使用样式表的绝对链接而不是相对链接。所以使用类似的东西:
<link rel="stylesheet" href="http://mywebsite.com/css/style.css">
而不是
<link rel="stylesheet" href="css/style.css">
感谢您的所有帮助,但它始终是IE的小事。
为了记录,我还确保通过你们的一些很棒的提示改变了我的标题。这是现在的最终标题示例:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" charset="utf-8" />
<title>My Site</title>
<link rel="stylesheet" href="css/style.css" media="screen">
<!--[if gte IE 8]><link rel="stylesheet" href="css/ie.css"><![endif]-->
<!--[if IE 7]><link rel="stylesheet" href="http://mysite.com/css/ie7.css"><![endif]-->
</head>