ie6重复文字bug解决方法总结

在网上首先找到了好几篇相同的文章,解释的原因是注释引起的bug,但我的代码中并没有注释啊,总结了一下有一下解决方案

1、不放置注释。这是最简单、最快捷的解决方法,但不方便,有时是需要注释的;
2、注释不要放置于2个浮动的区块之间;
3、将文字区块包含在新的元素之间(这个增加了多余的元素),如在外面再加一层div;
4、去除文字区块的固定宽度,与3有相似之处;
5、在后面加一个
或者空格(这个增加了多余的元素);
6、使用IE注释格式(这个是可以使用的,不论在IE还是火狐都正常显示,而且也符合标准,但和常规的注释不一样)
7、给盒子加;属性(个人觉得这个应该是最好的解决方法,应该只有IE6有这个BUG,可以只针对IE6加这个属性)。

 代码如下 复制代码

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
 #test {
  border: 1px solid #ddd;
  width:300px;
 }
 #test a {
  float:left;
  width:50%;
 }
 #test a:hover {
  background-color:#ddd;      
 }
</style>
</head>
<body>
<div id="test">
    <a href="#">一二三四五</a>
    <a href="#">上山打老虎</a>
    <a href="#">老虎不在家</a>
    <a href="#">看见小松鼠</a>
    <a href="#">数来又数去</a>
    <a href="#">怎么多了一只松鼠</a>
</div>
</body>

bug的解决,首先想到著名的ie6浮动动元素多出3pxbug
所以沿用消除3px bug的方法,给浮动元素margin-right:-3px;
结果bug消失,代码如下

 代码如下 复制代码

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
 #test {
  border: 1px solid #ddd;
  width:300px;
 }
 #test a {
  float:left;
  width:50%;
  margin-right:-3px;
 }
 #test a:hover {
  background-color:#ddd;      
 }
</style>
</head>
<body>
<div id="test">
    <a href="#">一二三四五</a>
    <a href="#">上山打老虎</a>
    <a href="#">老虎不在家</a>
    <a href="#">看见小松鼠</a>
    <a href="#">数来又数去</a>
    <a href="#">怎么多了一只松鼠</a>
</div>
</body>

解决方法二
第二个清除bug的方法,浮动元素加背景色background-color: #eee;,bug消失

 

 代码如下 复制代码
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
 #test {
  border: 1px solid #ddd;
  width:300px;
 }
 #test a {
  float:left;
  width:50%;
  background-color: #eee;
 }
 #test a:hover {
  background-color:#ddd;      
 }
</style>
</head>
<body>
<div id="test">
    <a href="#">一二三四五</a>
    <a href="#">上山打老虎</a>
    <a href="#">老虎不在家</a>
    <a href="#">看见小松鼠</a>
    <a href="#">数来又数去</a>
    <a href="#">怎么多了一只松鼠</a>
</div>
</body>

三个方法在测试demo中是可以解决问题的,在我遇到的个案中仅方法一可行,所以我对ie6重复文字bug的结论是浮动,浮动是引起这个bug的关键,至于为什么浮动会引起这个现象

时间: 2024-10-23 18:51:33

ie6重复文字bug解决方法总结的相关文章

常用的10种CSS BUG解决方法与技巧

最常用的10种CSS BUG解决方法与技巧-浏览器兼容教程 CSS bug是布局中最头疼的问题.我们需要兼顾各种浏览器,以期待获得一致的效果. 非常遗憾的是各厂商之间的竞争导致很多问题的存在.而IE6与IE7在很多问题上也存在着很大的差别. 轻松的解决CSS bug是我们必须掌握的技能.现在整理出最常用的12种CSS BUG解决方法以及CSS BUG类的小技巧. 希望对您的学习.工作有所帮助,如果您依然有疑问, 一. 针对浏览器的选择器 这些选择器在你需要针对某款浏览器进行css设计时将非常有用

最常用的12种CSS BUG解决方法与技巧

最常用的12种CSS BUG解决方法与技巧 一. 针对浏览器的选择器 这些选择器在你需要针对某款浏览器进行css设计时将非常有用. IE6及其更低版本 * html {} IE7及其更低版本 *:first-child+html {} * html {} 仅针对IE7 *:first-child+html {} IE7和当代浏览器 html>body{} 仅当代浏览器(IE7不适用) html>/**/body{} Opera9及其更低版本 html:first-child {} Safari

Thinkphp中volist标签mod控制一定记录的换行BUG解决方法_php实例

本文实例讲述了Thinkphp中volist标签mod控制一定记录的换行BUG解决方法.分享给大家供大家参考.具体方法如下: 一.BUG描述: 存在于thinkphp 2.0 版本 Mod属性还用于控制一定记录的换行,例如: 复制代码 代码如下: <volist name="list" id="vo" mod="5" > {$vo.name} <eq name="mod" value="4"

Win8系统开机后鼠标光标不停闪烁无法正常输入文字的解决方法

Win8系统开机后鼠标光标不停闪烁无法正常输入文字的解决方法  故障原因分析: 应该是鼠标硬件出现问题了. 解决方法: 1.更换其他鼠标,如果恢复正常说明是鼠标的问题. 2.同一个鼠标接入不同电脑,如果还是遇到同样的问题,那就可以确认是鼠标的故障,建议更换鼠标. 3.如果确认鼠标没有问题,建议更换一个插口再试试. 以上就是Win8鼠标光标不停闪烁无法正常输入文字的解决方法,这种情况还有可能是鼠标接触不良,重新插拔一下就可以了,希望能够帮助到大家.

ios8 beta4微信闪退bug解决方法

  ios8 beta4微信闪退怎么办?下文将告诉大家ios8 beta4微信闪退bug解决方法,有果粉表示升级beta4之后会出现微信群名片闪退现象,该如何解决呢?请看下文介绍吧. 法一.使用PP助手修复闪退,步骤请参考:"iphone5s软件闪退怎么办?iphone5s闪退修复工具使用教程". 法二.耐心等待beta5修复bug或微信官方修复.

jquery live()重复绑定的解决方法介绍

 本篇文章主要是对jquery中live()重复绑定的解决方法进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助 Query中.live()方法的使用方法    今天在写代码的时候遇到一个问题,直接上代码看: $(function(){            $(".file").live("click",function(){                     var task_name=$(this).text();            

自己开发遇到的坑IE7 图片scrollTop BUG解决方法

IE7 图片scrollTop BUG解决方法:

MySQL 处理插入过程中的主键唯一键重复值的解决方法_Mysql

本篇文章主要介绍在插入数据到表中遇到键重复避免插入重复值的处理方法,主要涉及到IGNORE,ON DUPLICATE KEY UPDATE,REPLACE:接下来就分别看看这三种方式的处理办法. IGNORE 使用ignore当插入的值遇到主键(PRIMARY KEY)或者唯一键(UNIQUE KEY)重复时自动忽略重复的记录行,不影响后面的记录行的插入, 创建测试表 CREATE TABLE Tignore (ID INT NOT NULL PRIMARY KEY , NAME1 INT )d

防止刷新重复刷新提交解决方法

防止刷新重复刷新提交解决方法 方法一:检测数据表,看是否有相同的数据.这种方法对插入数据可能意义更大些,不过如何定义是相同的数据,是个麻烦的事.同时,如果不是插入数据,是删除呢,就不适用了. 方法二:提交后,转向一个过渡页面,然后再从过渡页面返回到当前的页面.这就要求在提交后,要把当前页面的url地址作为参数传过去,同时不能保存缓存,否则"后退"带来不良后果.不过,如果是简单的删除,似乎转来转去太麻烦了. 方法三:用网页特效捕捉f5事件.比如有如下代码:   window.docume