在IE中隐藏CSS元素

Koa*_*la7 4 html css internet-explorer

我需要在IE的CSS中隐藏背景元素。

这是css文件中的类

.navbar-header .nav #presentacion {
    background:url("../img/horiz-line.png") no-repeat scroll 108px 20px transparent;
    display: block;
    height: 20px;
    margin-top: 20px;
}
Run Code Online (Sandbox Code Playgroud)

我想使用此方法,将CSS插入隐藏此部分的页面的头部:

    <!--[if IE]>
          <style>
         .navbar-header .nav #presentacion {
         display: block;
         height: 20px;
         margin-top: 20px;
         background: none;}
    </style>
   <![endif]-->
Run Code Online (Sandbox Code Playgroud)

它不起作用,背景仍显示在IE中,我在做什么错?

小智 5

IE 10 +不支持条件样式。因此,您必须将其用于IE10 +:

<style>
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE10+ styles */
  .navbar-header .nav #presentacion {
         display: block;
         height: 20px;
         margin-top: 20px;
         background: none;}
}
</style>
Run Code Online (Sandbox Code Playgroud)

此处提供更多信息: 在某些情况下,例如Internet Explorer特定的CSS或Internet Explorer特定的JavaScript代码,如何仅将Internet Explorer 10定位?


Dan*_*sky 0

也许您在公共样式表之前声明了它,并且它被覆盖了。尝试这个:

<!--[if IE]>
  <style>
    .navbar-header .nav #presentacion {
      display: block;
      height: 20px;
      margin-top: 20px;
      background: none !important;
    }
  </style>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)