Html 有条件的评论针对IE8有效吗?
当IE8发布时,下面的代码可以添加条件样式表吗Html 有条件的评论针对IE8有效吗?,html,css,internet-explorer,internet-explorer-8,stylesheet,Html,Css,Internet Explorer,Internet Explorer 8,Stylesheet,当IE8发布时,下面的代码可以添加条件样式表吗 <!--[if IE 8]> <link rel="stylesheet" type="text/css" href="ie-8.0.css" /> <![endif]--> 我读过一些关于这是否适用于beta版的相互矛盾的报告。我希望有人能分享他们的经验。谢谢。这对我来说很有效——无论是在怪癖模式还是标准合规模式下。但是,当切换到IE8兼容模式时,它不起作用。需要注意的一点是: * + html #t
<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="ie-8.0.css" />
<![endif]-->
我读过一些关于这是否适用于beta版的相互矛盾的报告。我希望有人能分享他们的经验。谢谢。这对我来说很有效——无论是在怪癖模式还是标准合规模式下。但是,当切换到IE8兼容模式时,它不起作用。需要注意的一点是:
* + html #test[id] { color:lime }
它确实可以工作,但是如果您正在加载页面/站点本地网络(例如Intranet)默认情况下,它将以IE7模式加载(更新-[*]是一种特殊情况,在标准模式下呈现)
这与微软公司最初的默认标准声明背道而驰
e、 g
工具/兼容性视图设置
全部取消选中谢谢您的帮助。我发现了解决方案,显然问题在于让每个样式表使用自己的title属性。有一次,除了主样式表之外,我把标题都去掉了,没问题 这是IE8特有的一个奇怪问题——尽管我被告知它应该是这样工作的,这与“样式表偏好”有关——它只会造成问题,因为解决方案要求您删除标题,这在编写脚本时可能会很有帮助,等等——当您需要调用样式表时 无论如何,我不确定这是否是一个bug,或者应该是这样,但我希望微软进一步调查
谢谢为什么还要为IE8编写单独的样式表呢 如果您已经为IE7进行了调试,则可以强制IE8进入兼容模式,从而显示代码,就像IE8是IE7一样 你要做的就是把这个放在开头的标签下面。在其他任何地方,它都不会起作用 然后,每个项目平均只需要半小时左右的工作,不需要对IE8进行密集的调试 甚至Msn.com也会这样做——有点讽刺,嗯
最近写了一篇关于它的博文:IE8呈现出比IE7更好的效果,我有IE6、IE7和IE8的样式表;起初,我认为条件注释对IE8不起作用。经过一段时间的实验,我发现IE8没有应用一些规则,只是因为我需要将祖先类或父类放在第一位,例如。 我上了一堂像这样的课
.niceclass{some:properties;more:properties;}
只有当我将其更改为以下内容时,它才起作用:
.parentclass.niceclass{some:properties;more:properties;}
或
#parentselector.niceclass{some:properties;more:properties;}
顺便说一句,在我的IE8-only css中,我只有一个覆盖规则,其余的几乎像firefox一样呈现,尽管这并没有让我离开FF 就我而言,我想使用css的圆形边框。Vista上的IE8不支持此功能。由于图形是这样的,圆形的边框也会显示一个漂亮的圆形阴影,所以在IE8中页面看起来很糟糕 我尝试使用条件注释,但没有效果,IE8不会计算if-IE表达式,因此不会包含外部样式表 然后我考虑将其置于怪癖/兼容性模式,然而,这仍然不起作用,因为我使用的CSS黑客不再适用于IE8 最后但最不重要的是,我发现了一个可以在兼容模式下正确呈现页面的CSS黑客
* + html #test[id] { color:lime }
现在,我不知道这是否适用于IE7或以下版本,所以您至少会有三个
你想支持的每个IE版本都有不同的破解方法,例如
* + html #test,
html+body #test,
* html body #test
{ color:lime }
我想知道互联网开发者的下一次回归会给我们带来什么。太好了。还有一个来自Microsoft的非标准扩展。这个扩展非常古老,非常有用,因为它允许非黑客CSS开关为MSIE提供不同的样式表。这个问题早就该解决了。你是说IE7兼容模式吗?否:Beta 2有浏览器模式和文档模式。文档模式允许IE7兼容(以及严格模式和怪癖模式)。浏览器模式有“IE 7”、“IE 8”和“IE 8兼容模式”选项。这就是我的意思。我认为这取决于doctype(不确定,尚未测试):我对Microsoft的理解是,IE 8严格模式会在指定任何有效的HTML doctype后立即触发。不,不正确。如果指定了doctype,则本地网络上的IE8将以IE5(怪癖模式)或IE7(标准模式)呈现。为了查看以真正的IE8标准模式呈现的本地站点,您必须明确地告诉IE您想要它(例如,用户必须选择此选项)Ok有趣-您如何知道这一点?你能提供一些证据吗?当我进入IE8中的开发者工具时,它会报告它在加载本地页面(例如localhost/somepage.html)@Whyamistilltyping时正在运行IE8模式的渲染和浏览器模式-IE博客()会发布有关IE进度的信息。对于IE8 Beta 2(),他们引用:“在默认状态下,公共internet上的所有站点都以internet Explorer 8标准模式显示(兼容性视图关闭),所有内部网站都以internet Explorer 7标准模式显示(兼容性视图打开)。”-他们后来确实更改了此行为(因此我现在正在更新我的答案)从本地计算机加载的页面是一个例外,默认情况下以标准模式呈现……记录的更改发生在IE8 RC1中。请阅读完整评论以了解群集的完整详细信息。。。EricLaw[MSFT]在5天后的评论中“澄清”了:当IE9出现时会发生什么?我认为你不应该在不同的链接样式表中添加相同的标题。几年前,阿菲尔在康克勒也不太管用。
* + html #test,
html+body #test,
* html body #test
{ color:lime }