omiga

简单就好

IE6退出历史舞台?

2条评论»

刚从aw那看到IE6将退出历史舞台的消息,说实话,兴奋了一下。尽管目前的IE系列浏览器在我电脑中早已是名存实亡,但是由于工作或是学习的需要,还是一直装着,而且还是IE6,IE7一起装着,实属无奈。虽然IE7在性能上并不见得比IE6好,但是其对web标准的支持确实是大有改观的,修复了IE6的很多严重bug。

尽管如此,尽管MS说将在windows的更新的同时更新IE6,彻底淘汰掉IE6,但是对开发者来说IE6的退出可能还不会这么快。现在做web前端开发的同时还专为IE6-版本调试的人还是大有人在的~···况且国内如此多的window盗版,很多“聪明”的用户都关闭了系统的自动更新功能,据说是盗版window的更新可能导致系统的不稳定。连IE5都还没有死掉,IE6的彻底死亡自然也是不会这么快的。

IE6的退出自然值得兴奋,但更值得兴奋的恐怕是全新的IE8,IE8的开发团队认真接受IE7的反面意见,IE8将采用全新的渲染引擎,更好地支持CSS2.1。hasLayout这一IE独有的渲染概念,将在IE8中取消~···这意味着IE8将更接近firefox,近乎完美的支持Acid2,远比FF2优秀,对IE8的较量,我们只能进一步期待firefox 3。但是比较遗憾的是,至今仍没有一种浏览器对CSS3的完美支持,IE8更是只字未提。

IE6真TMD龌龊~

2条评论»

虽然已经骂过IE6无数次了,但是今天还要骂,因为刚刚改一个IE6的BT问题,让我非常恼火。

我使用的浏览器主要是FF,所以一般我做页面测试也先在FF中进行,不仅仅是因为FF好用,同时也因为FireBug太强大了,调试JS省去不少精力。虽然如此,现今做调试时FF,IE7,IE6一个都不会落下,毕竟IE仍然占据着大部分浏览器市场,opera,safari也会做简单的调试,只要没有出现严重的问题,一般在这两种浏览器上花费的精力较少,同时由于对web标准的良好支持,FF调试通过的页面一般在opera和safari下都是没有什么问题的。

今天写的页面,在我机子上好好的,JS,CSS都执行的很好。拿给搞Ajax的同学和搞PHP的同学那,他们的IE6都出现了相同的问题,具体问题不重要。然后我辛苦的调试,在Ajax的机子上OK了,然后跑PHP同学那,把页面搞出来刷两下,靠,问题又没有了~···[aaa],真叫人哭笑不得,而且问题的解决方法还是那么的BT,删除了一段HTML代码的空格就搞定了,当然这次不是重复字符的问题了,能说什么呢,只能说IE6,I服了YOU!很BT,很龌龊!

IE6下的重复字符bug

2条评论»

换了skin,重做个登入页面,中午只在FF中测试了,顺便用IE Tab简单测试下,没问题。下午在线看了《龙之战争》后,用IE6试试!cao~!又是重复字符!关于IE6产生重复字符bug,一般情况下可能是由于多个浮动元素之间的注释造成的,那么不一般的情况可能是代码结构的问题,比如我上次的浮动。这次我是彻底对IE失望,对IE6绝望!很多问题产生的莫名其妙,我找,我查,我改!

问题解决方法:删除代码中所有用于格式化的东东,包括换行,空格等。也就是说你的代码只是代码,密密麻麻的代码,其他什么都没有。这样问题就没了~···[aaa]

关于浮动embed产生重复字符的问题

发表评论»

这个问题发现很久了,还是在暑期改版的时候一个页面中的问题。由于当时我的IE6绿色版有些问题,并没有出现这个bug,后来在网吧的IE6上才发现这个问题。 产生该bug需满足两个条件:

  1. 浮动的仅是<embed>标签,外层并无<object>
  2. 相邻浮动容器中的字符不能包含在内联元素中

产生bug的主要代码:

<!--
body{font-size:12px;}
#container{width:900px; margin:0 auto;}
h1{text-align:center;}
p{text-indent:2em; line-height:18px;}
-->
<h1>关于使用浮动&lt;embed&gt;产生重复字符的问题</h1>
<div id="container">
<object width="100" height="100" data="abt.swf" type="application/x-shockwave-flash">
<param name="src" value="abt.swf" /><param name="wmode" value="opaque" />
<param name="quality" value="high" />
</object>
<div id="content" style="margin: 0pt 15px 15px; width: 645px; float:right;">
这个问题发现很久了,还是在暑期改版的时候一个页面中的问题。由于当时我的IE6绿色版有些问题,并没有出现这个bug,后来在网吧的IE6上才发现这个
问题。产生该bug需满足两个条件:浮动的仅是<embed>标签,外层并无<object>相邻浮动容器中的字符不能包含在内联元素中。
<p style="color:#F00; font-size:14px; font-weight:bold;">大家注意看,本段文字的最后一个字符将在下一行重复显示</p>
</div>
</div>

点击查看代码演示 如上所述,产生该bug的条件,其实也隐含了解决此bug的部分方法。故解决此bug至少有以下方法。

  • 使用严格的嵌套方式插入flash,可以使用<object>嵌套,或是在外层嵌套其他标记,只要不让<embed>浮动即可;
  • 相邻文本嵌套在内联元素中;
  • 在文本字符后添加HTML注释,即<!—->;

以下代码为使用注释方式修复此bug:

<!--
body{font-size:12px;}
#container{width:900px; margin:0 auto;}
h1{text-align:center;}
p{text-indent:2em; line-height:18px;}
-->
<h1>关于使用浮动&lt;embed&gt;产生重复字符的问题</h1>
<div id="container">
<object width="100" height="100" data="abt.swf" type="application/x-shockwave-flash"><param name="src" value="abt.swf" /><param name="wmode" value="opaque"
/>
<param name="quality" value="high" />
</object>
<div id="content" style="margin: 0pt 15px 15px; width: 645px; float:right;">
这个问题发现很久了,还是在暑期改版的时候一个页面中的问题。由于当时我的IE6绿色版有些问题,并没有出现这个bug,后来在网吧的IE6上才发现这个
问题。产生该bug需满足两个条件:浮动的仅是<embed>标签,外层并
无<object>相邻浮动容器中的字符不能包含在内联元素中。
<p style="color:#F00; font-size:14px;font-weight:bold;">大家注意看,本段文字的最后一个字符将在下一行重复显示</p>
<!--修复IE6浮动embed产生重复字符bug-->
</div>
</div>

点击查看代码演示 该bug本应该从一开就被避免,只是由于我使用了

<embed src="abt.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="opaque" menu="false" style="width:225px;height:335px;float:left;"></embed>

在页面中插入flash,所以实际中这个问题出现的几率应该是非常的小,发文志之。