gpt4 book ai didi

html - 为什么 `<![endif]-->`出现在IE渲染的页面上?

转载 作者:技术小花猫 更新时间:2023-10-29 11:59:28 26 4
gpt4 key购买 nike

得到真的很愚蠢..但是在各种博客和微软网站上一遍又一遍地阅读了同样非常简单的答案之后,AFAICT 我做对了,我仍然难住了,所以我在这里问:

为什么这个测试页面中的 IE 条件渲染文字 <![endif]-->在 IE 页面底部,在本地网络上查看时 ?我很确定这是 IE“下层隐藏条件注释”的正确语法。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>IEconditionalSyntax_wtf.html</title>
</head>
<body>
well?<br>
<!--[if IE]>
wtf?!
<![endif]-->
</body>
</html>

更新:

为了节省您阅读所有评论的时间...如果您遇到同样的问题:下面的大多数评论基本上只是提出了可能的(但没有定论,无效的)解释,有几个人报告说他们无法重现这个问题。到目前为止,似乎还没有人知道答案。我只在 IE9/Win7(w/任何 浏览器/文档模式)...在我的本地服务器(由我的本地 iMac 提供的页面)上查看页面时才看到问题10.6.8,内置网络服务器)。

但是仅仅因为没有人能够从我的本地服务器上解决这个问题并不一定意味着下面的建议不会为您解决这个问题。在我们知道答案之前,我认为假设任何事情都没有帮助。所以你可能确实想尝试下面列出的所有内容,如果你也有 <![endif]-->出现在您的 IE 页面上,似乎没有充分的理由。

Patrick 提供了一个很好的解决方法,但它确实依赖于 jquery。

我在考虑是授予赏金(我开始,并于 2012 年 4 月 16 日到期),还是接受一个答案,以便在应予确认的地方授予...我没有明确的行动。 . 所以我只是决定让系统自动将一半的赏金奖励给 Patrick 以获得伟大的(尽管是 jquery)解决方法。我不想给予全部赏金,因为赏金的全部目的是为了满足我对为什么我首先看到条件评论的好奇心。我也不想接受任何答案(到目前为止),因为在这种情况下我不会使用任何解决方法,因为该问题只出现在我的本地网络上,因此与向全世界发布的生产代码无关。

最佳答案

IE10 不支持条件注释,所以我建议使用完全不同的方法。

Javascript 在这方面效果很好。

这就是我所做的,它更容易使用,需要 jquery

var userAgent, version;

if ($.browser.msie) {
version = "ie" + $.browser.version.substring(0, 1);
$("body").addClass("ie " + version);
} else if ($.browser.mozilla) {
$("body").addClass("mozilla");
if (navigator.userAgent.toLowerCase().indexOf('firefox') !== -1) {
userAgent = navigator.userAgent.toLowerCase();
userAgent = userAgent.substring(userAgent.indexOf('firefox/') + 8);
userAgent = userAgent.substring(userAgent.indexOf('firefox/'), userAgent.indexOf('.'));
version = "ff" + userAgent;
$("body").addClass(version);
}
} else if ($.browser.opera) {
$("body").addClass("opera");
} else if ($.browser.webkit) {
$("body").addClass("webkit");
}

然后你可以这样写css:

span.something { width: 30px; }
.ie7 span.something {width: 25px;}

而且,更好的是,将它与 modernizr 结合使用,您还可以编写基于功能支持的规则。请注意,这些是全局 js 变量,因此您甚至可以将它们用于基于浏览器的不同功能。比如,如果您需要编写 ie7 hack 或其他东西。

编辑:用更简洁的版本替换代码,结果相同

关于html - 为什么 `&lt;![endif]-->`出现在IE渲染的页面上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9857639/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com