我有一个继承的项目,有些地方是一个彻头彻尾的混乱.这是其中之一.我需要只针对IE(任何版本).
#nav li {
float: left;
height: 54px;
background: #4f5151;
display: table;
border-left: 1px solid grey;
}
Run Code Online (Sandbox Code Playgroud)
需要说明的是:在嵌入式样式表中,如果没有为html中的标记添加ID或类,我只需要在用户使用IE时应用边框样式.我怎样才能做到这一点?
编辑:找到Firefox的解决方案,编辑问题以反映这一点.
这可能是一个愚蠢的问题,但我想使用Modernizr JS库来检测某些浏览器属性,以确定要显示或不显示的内容.
我有一个名为Pano2VR的应用程序,它输出HTML5和SWF.我需要HTML5 for iOS设备用户.
但是,IE根本不会呈现此"HTML5"输出.似乎他们的输出使用CSS3 3D变换和WebGL,IE9中显然不支持一个或多个.
因此,对于那些用户,我需要显示Flash版本.我打算使用IFRAME并通过Modernizr脚本传递SRC或document.write出正确的IFRAME代码,具体取决于浏览器.
所有这些都导致我如何使用Modernizr来检测IE或IE?或者检测CSS 3d变换?
或者还有另一种方法吗?
我一直在疯狂地试图让评论条件工作,我没有运气,有人可以解释我做错了什么吗?
这是我的代码:
<!--[if IE 10]>
IE IS VERSION 10<br />
<![endif]-->
<!--[if !IE]><!-->
Browser is not IE
<!--<![endif]-->
<!--[if lt IE 9]>
IE IS LESS THAN VERSION 9<br />
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
发生的事情是令人沮丧的不一致.当我在IE8中加载带有上述代码的页面时,它会收到消息"IE不仅仅是版本9"这么好吗?不,因为当我在IE10中加载SAME PAGE时,我收到消息 "浏览器不是IE"
为什么它认为IE10不是IE浏览器?!我一直在页面爬行,但我的代码似乎没有任何问题.
在两列框 ( column-count: 2
) 中,CSS 设置break-inside: avoid
应避免某些内容从一列中断到另一列。这适用于 Firefox 和 Chrome(使用适当的 -webkit... 名称),但不适用于 Internet Explorer。
这是一个例子:https : //jsfiddle.net/6s7843ue/1/
只是为了确保它不是内容中的 flexbox:https ://jsfiddle.net/6s7843ue/4/
我没有找到 IE 不支持的任何信息break-inside
,恰恰相反:https : //msdn.microsoft.com/de-de/library/hh772193%28v=vs.85%29.aspx
我究竟做错了什么?谢谢!
(另见上面的jsFiddle)
HTML
<div class="outer" style="margin: 40px auto; width: 500px; border: 1px solid #0000FF">
<div class="container">
This is a rather long text to break into three separate lines, but sometimes won't stay in one column
</div>
<div class="container">
Should be in next column
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS …