当我学了矩阵分析的时候我知道什么是麻烦,当我学了傅里叶级数的时候我知道什么是相当麻烦。

然而,当我刚刚接触前端,我才明确什么叫做坑爹的ie6。这个分享对于经验丰富的前端基本都遇过。对于刚入行的新手,也许能够起到一点点的指导作用。

不求救万人于水火。但求某日能帮到路过的你。

在说bug之前,先看看各大浏览器近期的份额

有这个百度的浏览器份额能够看出ie6的末日渐行渐近了。

可是中国盗版的xp系统用户还不在少数,所以ie6在短期内不会消失。以下就说一下以ie6为首的一些奇葩而又常见的bug。

1、IE6.0 Bug---双倍边距(margin)的bug

这个不用多说。入门和没入门的差别就在于有没有听说这个bug了。

解决方法:

加一句:display:inline;就ok.

2、ie6在下面情况下将会引起文字溢出bug

出现的前提:

一个容器包括2两个具有“float”样式的子容器。

第二个容器的宽度大于父容器的宽度,或者父容器宽度减去第二个容器宽度的值小于3

在第二个容器前存在凝视(这也是为什么此bug也叫做“IE6凝视bug”的原因)。

解决方法:

1.去掉凝视。

2.讲--改成————

3、ie下图片空隙BUG

出现的前提:

有2个img或者同一时候用的时候,就会出现。

解决方法:

1.img加vertical-align:top;

2.设置图片的浮动属性。比如img加float:left;

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWluaWRydXBhbA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

4、解决IE6不支持position:fixed的bug

解决方法:

/* 除IE6浏览器的通用方法 */
* html,* html body{background-image:url(about:blank);background-attachment:fixed}防抖动
.ie6fixedTL{position:fixed;left:0;top:0}
.ie6fixedBR{position:fixed;right:0;bottom:0}
.ie6fixed3 { /* IE6浏览器的特有方法 */
/* IE6浏览器的特有方法 */ * html .ie6fixedTL{position:absolute;left:expression(eval(document.documentElement.scrollLeft));
top:expression(eval(document.documentElement.scrollTop))} * html .ie6fixedBR{position:absolute;left:expression(eval(document.documentElement.scrollLeft+document.documentElement.clientWidth-this.offsetWidth)-(parseInt(this.currentStyle.marginLeft,10)||0)-(parseInt(this.currentStyle.marginRight,10)||0));top:expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight-this.offsetHeight-(parseInt(this.currentStyle.marginTop,10)||0)-(parseInt(this.currentStyle.marginBottom,10)||0)))}

5.定义不了高度为1px的容器


IE6下的默认的行高造成这个bug, 

解决方法非常多, 

比如:overflow:hidden 或者zoom:0.08 或者 line-height:1px。

6.超链接訪问过后hover样式就不出现的问题


被点击訪问过的超链接样式不再具有hover和active了 

解决方法:

改变CSS属性的排列顺序: L-V-H-A  

   
<style type="text/css">
a:link {}
a:visited {}
a:hover {}
a:active {}
</style>

今晚就写这么多。有空再往里面加。

尽管非常多东西都常常见到,可是假设你不记下来,有一天你遇到了,不一定能想得起怎样解决。

所以就算简单,不忘积累。

顺便把demo的网址发一下吧,请在对应的浏览器看,比如ie6.

链接:http://jsbin.com/hacadukurilo/1/edit

Author: Alone

Antroduction: 高级前端开发project师

Sign: 人生没有失败。仅仅有没到的成功。

博主相关文章推荐:

有趣的前端题目,看了不懊悔

移动端前端开发概述

浅谈 标签的语义化

浅谈鼠标滚轮事件

不积跬步无以至千里----高度自适应的textarea

sass和less。优秀的前端样式预处理器

视差滚动的那些事儿



关于那些常见的坑爹的小bug(会持续更新)的更多相关文章

  1. C#、Java中的一些小知识点总结(持续更新......)

    前言:在项目中,有时候一些小的知识,总是容易让人忽略,但是这些功能加在项目中往往十分的有用,因此笔者在这里总结项目中遇到的一些实用的小知识点,以备用,并持续更新...... 1.禁用DataGridV ...

  2. 常见算法合集[java源码+持续更新中...]

    一.引子 本文搜集从各种资源上搜集高频面试算法,慢慢填充...每个算法都亲测可运行,原理有注释.Talk is cheap,show me the code! 走你~ 二.常见算法 2.1 判断单向链 ...

  3. web app遇到的一些坑及小技能(持续更新...)

    遇到的一些坑 问题:手机端 click 事件会有大约 300ms 的延迟 原因:手机端事件 touchstart --\> touchmove --> touchend or touchc ...

  4. iOS 小知识点(持续更新)

    1.如何通过代码设置Button  title的字体大小 设置Button.titleLabel.font = [UIFont systemFontOfSize:<#(CGFloat)#> ...

  5. iOS开发之Bug(持续更新)

    前言:收集在开发和学习的过程中遇到的bug. 1.循环利用cell的ID设置位置写错了.导致程序奔溃. 2.对于除数算法,可以直接算出结果的就写上结果,不要偷懒写式子让计算机自己算,更何况是除数,会有 ...

  6. 常见排序算法整理(python实现 持续更新)

    1 快速排序 快速排序是对冒泡排序的一种改进.  它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行 ...

  7. [总结]vue开发常见知识点及问题资料整理(持续更新)

    package.json中的dependencies与devDependencies之间的区别 –save-dev 和 –save 的区别 我们在使用npm install 安装模块或插件的时候,有两 ...

  8. js小题目(持续更新)

    总是感觉之前做过的问题很久没碰的话就会忘掉,于是打算专门开一个记录小题目的随笔当题典用. 目录 五种主要数据类型进行值复制 数组去重 数组去重并计数 实现clone()方法,对五种主要数据类型进行值复 ...

  9. 【转】[总结]vue开发常见知识点及问题资料整理(持续更新)

    1.(webpack)vue-cli构建的项目如何设置每个页面的title 2.vue项目中使用axios上传图片等文件 3.qs.stringify() 和JSON.stringify()的区别以及 ...

随机推荐

  1. oc字符串的用法

    #import <UIKit/UIKit.h> #import "AppDelegate.h" int main(int argc, char * argv[]) { ...

  2. oc 目录结构

    最顶级的oc2是一个项目名,下级的oc2下面的文件是一些程序文件(.m或者.h的文件)和一些界面文件(.xib或者storyboard文件),supporting files文件下面的是资源文件,可以 ...

  3. 文件的内核结构file和dup实现重定向

    一.打开文件内核数据结构 1.一个进程打开两个文件 文件状态标志:读.写.追加.同步.非阻塞等 2.一个进程两次打开同一文件 3.两个进程打开同一文件 示例程序:  C++ Code  1 2 3 4 ...

  4. 目的可疑,但方法非常值得学习的书——leo鉴书56

    书中提到写作手法绝对值得学习,为此能够打四颗星.   作者是个买直销产品的.靠写字让别人买自己的东西.当中特别强调了卖的多是太空时代的产品,意思就是读者非常可能并不须要,多半是被眼花缭乱的广告词儿骗了 ...

  5. java的jdbc简单封装

    在学了jdbc一段时间后感觉自己写一个简单的封装来试试,于是參考的一些资料就写了一下不是多好,毕竟刚学也不太久 首先写配置文件:直接在src下建立一个db.properties文件然后写上内容 < ...

  6. Android-SQLiteOpenHelper

    Android-SQLiteOpenHelper 一 概念 是对SOLiteDatabase的封装.主要用于建立和版本号控制,方便我们去建立库表结构 二 用法 又一次封装一个MySqliteOpenH ...

  7. php model与json_encode/json_decode

    常用于model的操作,看看就知道了 <?php class UserModel { var $user_id = 0; var $user_name = ''; var $user_email ...

  8. mark 百度Echarts统计图表

    mark http://git.oschina.net/seeyoui/kensite_cms/blob/master/src/main/java/com/seeyoui/kensite/framew ...

  9. FPGA管脚约束

    Edit → language templates : 打开即可查看基本语法. 一.xilinx中的约束文件 1.约束的分类 利用FPGA进行系统设计常用的约束主要分为3类. (1)时序约束:主要用于 ...

  10. JavaScript之正則表達式入门

    <html> <head><title>Js String 正則表達式</title><script>//边界符 js 中直接定义须要边界符 ...