害我白白浪费了一个半小时的青春……
之前一直不知道是什么意思,真正遇上了才知道,原来是很神奇的一个BUG,更神奇的是居然到现在还没有官方的解释。这个问题只在IE6中出现,就是在一系列设置了浮动的div最后,无端端的把后面的内容重复显示了。如图:
莫名其妙吧?源代码什么的,看了数十遍,硬是找不出我的代码错在哪。
上网找了很长时间,网上倒是N多的人遇到过。只能说,我们都在为微软的一意孤行埋单。
有的说,要把注释都去掉。我看了一下,页面没有任何注释。
有的说,尽量不要有两个以上的浮动元素——斩脚趾避沙虫?那我还怎么排版?
有的说,要把右边最后留出3个像素。试了一下,的确可行——这就是3px bug的名称的由来吧。然而这样很不爽,有种因噎废食的意味。效果出来太难看了,右边出现空隙,估计第二天就会被Tinta提意见:
其实也不会,Tinta用的是IE7……
然则问题出来,总得解决吧,最后找到解决方法——把所有浮动的元素都打上display: inline:
(后面的数字是我后来加上的)右边的3个像素也不用留了。
白白浪费了一个半小时,为的不是自己的BUG,而是别人的BUG。
只能感叹,不掌握核心技术,就只能被牵着鼻子走,无论你觉得自己多了不起。一个陈年老问题,本来完全可以无视,我们却在一次又一次的郁闷中重复郁闷。为什么我们要受这种莫名的罪?或许还是像我前两篇随笔中说的:因为它是IE……
阅读(795) posted on 2010年2月5日 21:56