Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 仅在CSS文件中指定IE的CSS属性_Html_Css_Internet Explorer_Internet Explorer 11 - Fatal编程技术网

Html 仅在CSS文件中指定IE的CSS属性

Html 仅在CSS文件中指定IE的CSS属性,html,css,internet-explorer,internet-explorer-11,Html,Css,Internet Explorer,Internet Explorer 11,实际上我需要指定这个属性 margin-left:-20px; 仅适用于IE-11和CSS文件中所有浏览器的其余属性 .navigator li a span { display: block; float: right; width: 80px; height: 50px; margin-right: -10px; margin-left:-20px; } 有没有办法做到这一点,因为我尝试了许多解决方案,但都没有成功 提前谢谢 听起来


实际上我需要指定这个属性

margin-left:-20px;
仅适用于IE-11和CSS文件中所有浏览器的其余属性

.navigator li a span {
    display: block;
    float: right;
    width: 80px;
    height: 50px;
    margin-right: -10px;
    margin-left:-20px;
    }
有没有办法做到这一点,因为我尝试了许多解决方案,但都没有成功

提前谢谢

听起来您的问题可以通过浏览器条件样式以外的其他方式解决,请先尝试一下,但无论如何:

对于IE 10和11,您可以使用以下命令:

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
/* IE10+ CSS styles go here */
}
不过请注意,它将同时识别IE 10和11

资料来源:

您可能还想看看这个:


对于IE 9及更低版本,您可以使用以下命令:

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
/* IE10+ CSS styles go here */
}
为此创建一个单独的样式表,然后使用它将其包含在HTML中

资料来源:

例如,如果你想瞄准IE7,你会这样做。您只需更改版本号即可

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

然后,您还可以针对比特定版本更低或更高的版本:

低于IE 8和IE 8:

<!--[if lte IE 8]>
    <link rel="stylesheet" type="text/css" href="ie8-and-down.css" />
<![endif]-->

高于IE 8:

<!--[if gt IE 8]>
    <link rel="stylesheet" type="text/css" href="ie6-and-up.css" />
<![endif]-->


请注意,您可以使用
lt
lte
gt
gte
,我编写的非常简单,仅受IE 11支持+


_:-ms全屏,:root.msie11{color:blue;}
//或者你可以试试这个
@介质全部和(-ms高对比度:无)
{         
*:-ms背景,.foo{color:red}/*IE11*/
}

为什么IE只需要
左边距
?如果这是由于IE中的显示怪癖造成的,那么可能有更好的方法来处理这个问题,而不必求助于浏览器嗅探。Microsoft从最近的浏览器中删除了特定于浏览器的css,尽管您可以使用hack()来完成,但不推荐使用!你应该尝试修复潜在的问题,因为ie11是相对现代的,并且应该遵守标准。你的代码在IE10上工作吗?或者其他人已经检查过了。@NickR hack解决了这个问题
但问题是我不知道为什么这种奇怪的行为只发生在IE中。@HimeshAadeshara实际上我对IE-10不感兴趣。我关注的是你链接到的那篇文章中的IE-11:“请注意,IE 10及以上版本根本不支持有条件的评论。”@CBroe太糟糕了,我自己也意识到了这一点。因此,这并不适用。我还为IE 10和11添加了一个解决方案,虽然它能识别这两个选项。非常感谢您的帮助,我也会尝试这个解决方案。谢谢您的帮助。@Yasmin很荣幸能帮助您,如果您发现答案帮助已满,您可以接受作为答案,或者您可以投票it@Yasmin你应该接受以下任何一个答案,这样这个案子就可以在第二个解决方案中解决(*::-ms background)对我来说效果很好。非常感谢你的帮助。我很抱歉延迟接受答案。我以为我升级并接受了答案。@Yasmin没问题,我很荣幸能帮助你。