CSS 更改可见性或显示在 IE 11 中不起作用

CSS to change visibility or display not working in IE 11

我有这两个相似的按钮,我希望其中一个在 IE (11+) 上工作,另一个在 Chrome

上工作
<a href="javascript:void(0);" id="btnKabulFisiExplorer" class="btn btn-primary float-right" style="margin-right: 10px; visibility:hidden"> <i class="glyphicon glyphicon-print"></i> Kabul Fişi Explorer</a>

<a href="javascript:void(0);" id="btnKabulFisi" class="btn btn-primary float-right" style="margin-right: 10px;"> <i class="glyphicon glyphicon-print"></i> Kabul Fişi</a>

其中之一,探索者有 visibility:hidden 内部风格。

我正在使用这个 css 来更改浏览器之间的可见性(仅针对 ie 11)

@@media screen and (-ms-high-contrast: none), (-ms-high-contrast: active) {
            #btnKabulFisiExplorer{
                visibility:visible;
            }
            #btnKabulFisi{
                display:none;
            }
        }

但无法使按钮可见。我也尝试过更改显示属性,但没有用。不过,它在更改其他按钮 display 属性时效果很好。

我做错了什么?

这是因为内联CSS比外联CSS有更高的优先级。由于您没有设置内联 display CSS,所以这就是为什么它在 visibility: hidden; 设置为内联时起作用的原因。

只需将内联 CSS 移动到 CSS 文件或标签的 class 规则。

还要检查media之前的@@是不是错误 (@@media ...)