CSS教程:expression在Chrome的问题
先看一段HTML代码,在下边这段代码中,这张****的宽度未知,我想写在CSS中写一行限制最大宽度为50px: <div id="test"> Firefox或IE较高的版本可以直接写max-width。在IE的低版本浏览器中,我们可能会写如下的代码: #test img{width: expression(this.width > 50 ? ''50px'': true); max-width: 50px; } 但,上边的代码会有一个性能上的问题,性能会非常的差。为什么差,可以看一下之前写过的:expression为什么性能差? 为了解决性能上的问题,我把代码写成了如下: #test img{ width: expression(this.width > 50 ? function(abc){abc.style.width = ''50px'';}(this) : ''auto''); max-width: 50px;} 写好后,在IE和FIREFOX都是正常的! 但是,在Chrome中就不同了,在这行下边的所有CSS都不能加载;如下边的代码,最后一行CSS在CHROME中是不执行的; #test img{ padding:10px;} 在IE和FIREFOX中是可以看到****有****边框的,但在CHROME中是没有的。
expression在Chrome中的问题要知道有这么回事,写代码时可以避开。 之后发现是代码中的问题,感谢fireyy 的提示,写成这样就没有问题了,少写了一个括号,但这样不知为什么在IE中没有问题: (function(abc){abc.style.width = ''50px'';})(this) |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |