CSS中写expression可能会在Chrome中有问题

作者:zishu 来源:子鼠blog 时间:2010-01-29 13:10:00 

先看一段HTML代码,在下边这段代码中,这张图片的宽度未知,我想写在CSS中写一行限制最大宽度为50px:

<div id="test">
 <img src="month_0702/n2007271255.gif" />
</div>

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;}
#test img{ width: expression(this.width > 50 ? function(abc){abc.style.width = '50px';}(this) : 'auto'); max-width: 50px;} 
#test img{ border:20px solid #FFCC00}

在IE和FIREFOX中是可以看到图片有黄色边框的,但在CHROME中是没有的。



expression在Chrome中的问题要知道有这么回事,写代码时可以避开。

expression的东西能不用就不要用,一担用了还有性能问题,为了解决性能问题又是出来了一个CHROME的问题。

为了解决CHROME的问题就又有性能问题了,不知道有没有更好的办法能兼容一下两者,实在不行就得在外边用JS来跑了。

之后发现是代码中的问题,感谢fireyy 的提示,写成这样就没有问题了,少写了一个括号,但这样不知为什么在IE中没有问题:

(function(abc){abc.style.width = '50px';})(this)

标签:expression,chrome,css
0
投稿

猜你喜欢

  • OpenCV图像颜色反转算法详解

    2022-04-25 16:19:31
  • 如何安装MySQL Community Server 5.6.39

    2024-01-26 23:07:29
  • 使用use index优化sql查询的详细介绍

    2024-01-20 05:46:59
  • python爬虫抓取时常见的小问题总结

    2023-03-18 07:34:07
  • Mysql逗号拼接字符串的关联查询以及统计问题

    2024-01-28 12:15:03
  • python实现超简单端口转发的方法

    2022-12-25 04:00:53
  • mysql高效导数据的方法讲解

    2024-01-28 08:42:50
  • 基于 Mysql 实现一个简易版搜索引擎

    2024-01-25 02:00:38
  • mysql中如何优化表释放表空间

    2024-01-18 09:58:27
  • Python之批量创建文件的实例讲解

    2021-04-10 15:17:08
  • SqlServer 索引自动优化工具

    2012-10-07 10:41:09
  • Python编程产生非均匀随机数的几种方法代码分享

    2023-02-10 02:00:19
  • java连接数据库增、删、改、查工具类

    2024-01-21 22:01:48
  • SQL Server口令 sql server安全性第1/2页

    2024-01-22 19:00:15
  • 图片格式与设计那点事儿

    2011-01-06 12:17:00
  • python数据可视化的那些操作你了解吗

    2023-11-04 15:18:55
  • Python 命令行非阻塞输入的小例子

    2023-12-09 19:48:29
  • Python基础之模块相关知识总结

    2021-09-06 21:39:39
  • 利用matplotlib+numpy绘制多种绘图的方法实例

    2021-02-24 14:10:07
  • Linux系统中为php添加pcntl扩展

    2023-09-04 02:58:15
  • asp之家 网络编程 m.aspxhome.com