所有的IE css hack

时间:2014-04-29 13:04:26

标签: html css internet-explorer css-hack

是否所有IE浏览器都有css hack。不是特定的IE版本。

我试过

@media \0screen\,screen\9 {
    body { background: green; }
} 

但它在IE7和IE11中不起作用。

7 个答案:

答案 0 :(得分:5)

<!--[if IE]>
    <link rel="stylesheet" type="text/css" href="all-ie-only.css" />
<![endif]-->

可在此处找到更多信息:http://css-tricks.com/how-to-create-an-ie-only-stylesheet/

正如ElKabong在评论中提到的那样

更新,您将在关注链接时阅读..

请注意,IE 10及以上版本不支持条件评论,所以这似乎有点噩梦,我现在没有简单的方法解决这个问题。但是,您可以在遵循上述链接的同时找到更多信息,也可以通过评论阅读。

答案 1 :(得分:1)

我只是HTML条件评论

<!--[if IE]>
<style>
    body { background: green; }
</style>
<![endif]-->

答案 2 :(得分:1)

以下媒体查询可能会对您有所帮助:

    /* <= IE 7 */
    @media screen\9 {}

    /* IE 8 */
    @media \0screen {}

    /* >= IE10 */
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {}

重要提示:对于IE9和以上阅读本文:

https://stackoverflow.com/a/15442638

在某些情况下,最好只为以下(其他)浏览器启用某些功能:

    /* WebKit */
    @media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) { .selector {} }

    /* Opera >= 12 */
    @media (min-resolution: .001dpcm) { _:-o-prefocus, .selector {} }

    /* Firefox > 4 */
    @media screen and (min--moz-device-pixel-ratio:0) {}

在使用svg-animation文件时,我遇到了同样的问题。我想要删除所有IE版本并使用gif动画代替它们,因为没有IE版本支持动画SVG文件。但看看这个:

http://caniuse.com/#feat=svg-smil

正如您在我的情况中所看到的,最好将动画gif实现为默认值,并仅将SVG用于上面列出的“其他”浏览器。

我在http://browserhacks.com/

上找到了这些媒体查询

答案 3 :(得分:0)

IE9 +

支持@media查询

http://caniuse.com/#search=@media

答案 4 :(得分:0)

不能在一个媒体查询中无法完成所有IE,因为尚未找到/创建所有版本的Internet Explorer,但您可以将其拆分为两个不同的CSS组。这是一种方法:

这个适用于8及更新版本:

/* Internet Explorer 8+ (Media Query) */

@media screen\0 {
   body { background: green; } 
}

和你的一样,这真的是一个css hack。 IE 9正式支持媒体查询,但IE 8及以下版本被愚弄,允许它们通过黑客工作。

以下是IE 7及以下版本之一:

/* Internet Explorer 7- (Media Query) */

@media screen\9 {
   body { background: green; } 
}

如果这对您不起作用,请在此处尝试另一个IE 7:

/* Internet Explorer 7- (Another Media Query) */

@media, {
   body { background: green; } 
}

有很多方法可以进行IE 7黑客攻击。

答案 5 :(得分:0)

试试这个。这是从IE 7到10测试的css hack:

    @media all and (-ms-high-contrast:none)
         {
         .myClass { myProperty: myValues }
         *::-ms-backdrop, .myClass { myProperty: myValues }
         }

它适用于我;)

答案 6 :(得分:0)

如果您需要定位所有非ie(非&lt; = ie11)浏览器:

@media { @media {
    /* Your styles ... */
}}

它仅适用于现代浏览器,因为IE&lt; = 11不支持nester媒体查询。