多出一只猪

前端笔记热度:307 ℃2 条吐槽阅读模式

今天妞说她做的页面出了点问题,我直觉就感觉跟IE6有关,看到了页面,(由于页面已经上线,不方便贴代码)经验告诉我这就是传说中的多出一个猪bug。

↓这就是多出来的那只猪

可恶的IE6总是给我们带来许多不必要的烦恼,关于这个bug的激活个人认为有下面几个条件。

1.是注释引起的,删除所有注释即可.
2.display为none的div也有可能引发此bug.
3.个人尚未发现,希望高手给予支持.

解决之路:

我看了一下那个页面代码,发现那个溢出的区域是用js生成的列表条目,于是就猜测是不是这个生成列表字段的js代码里添加了注释呢,让妞去查询之,回答是没有。于是再看代码,发现了

<div style="display:block;"  id="div_ltzpInfo">正在加载...</div>
<div id="div_wtzpInfo" style="display:none;"></div>

这么一段代码,应该是想用户体验提升的读取数据的loading,但是那个display:none是关键,因为极有可能是它触发了这个bug,于是按照常规的解决方法解决,网上流传着这些解决方法:

a. 不放置注释。最简单、最快捷的解决方法(没注释的可以无视)

b. 注释不要放置于 2 个浮动的区块之间

c. 将文字区块包含在新的 <div></div> 之间,如:<div style=”float:right;width:400px”><div> ↓这就是多出来的那只猪 </div> </div>

d. 去除文字区块的固定宽度,与 3 有相似之处

e. 有的人在注释后加一个 <br /> 或者空格,但只是消除现象。

f. 不要给浮动元素设置多宽度,使其不会到达包含元素的底部,或者对最后一个元素设置 margin-right: -3px; 或者更小。

g. 注释可以这样写:<!–[if !IE]>Put your commentary in here…<![endif]–>

最后妞选择了用</br>来解决,个人认为如果对框架要求不是太严格的情况下应该使用c方案,因为虽然这样代码侵入了原框架但是比一个表现型废的空标签
好一些吧。

结论:

问题解决了,总结一下。如果不知道这个多出一个猪的bug任你怎么弄也不会有结果的,所以要多学习,多了解;即使知道了这个bug也能搜到解决的方案但是你如果不知道激活这个bug的条件难免还会犯同样的错误,所以要引以为戒;

/*我的bug是只要你请客,我就一定会去吃*/

相关日志-小站地图为你展开

<<下一篇
上一篇 >>

2 条精彩的吐槽 在《 多出一只猪 》

快来吐槽吧

貼張圖 您还可以输入300个字

(鬼脸) (额) (难过) (闷骚) (钱哇) (鄙视) (蛋定) (睡觉) (看看) (生气) (猪头) (汗) (晕) (无语) (无法表达) (微笑) (得意) (开怀) (媚眼) (囧) (嘿嘿) (哼) (哭泣) (不说话)
多用心去倾听别人怎么说,不要急着表达你自己的看法 X
欢迎光临, 主人暂时不在,一切由我来接待哟~~
N
返回顶部▲ | 想去底部 ▼ | 想评论 X