1. 当我们写了一段正确的代码,但是在不同浏览器下,产生一些不正确的解析,这叫做兼容性问题

2. 在IE6下 ,标准盒模型:

width/height = content;
可视宽/高 = content + padding + border;

怪异盒模型
width/height = 可视宽/高;
content = width - padding - border;

在老版本IE下,不设置文档声明,页面就会陷入怪异盒模型解析

3. 在IE6下,占位宽 = content + padding + border + margin;
子元素宽高超出父级的宽高,可以把父级设置好的宽高撑开.

4. 在IE6下,块属性元素的高度小于19px的时候,高度会按照19px来处理.
解决办法:overflow:hidden;

5. 在chrome下,文字大小小于12px的时候,会被当做12px来处理解决办法: 用图片代替;

6. 在IE6下,1px的点线会显示成虚线

解决办法: 用图片代替;
7. 在IE6下给边框加transparent的时候,border-style最好设置成虚线

8. 在IE6,7下,不支持给块标签加inline-block;

解决办法:
在inline-block下,添加以下代码*display:inline;*zoom:1;

9. 在高版本的IE中,新增的h5标签不被IE高版本辨认,需要调用已经创建好的标签对象

10. IE6下 只支持 link visited hover active 这四个伪类,
并且只支持添加给a标签IE7下 只支持 link visited hover active

解决办法:JS
11. 在IE6,7下浮动元素的父级设置了固定宽度的话,不需要清浮动

12. haslayout IE渲染引擎中的一个属性,用来调节元素的渲染模式,当我们把这个属性 设置为true的话,这个元素就跟根据自身的内容大小或者父级的大小,来重新计算自己的宽高.
* body and html
* table, tr, th, td
* img
* hr
* input, button, file, select, textarea, fieldset
* marquee
* frameset, frame, iframe
* objects, applets, embed
* 触发hasLayout的样式:
* display: inline-block
* height: (任何值除了auto)
* float: (left 或 right)
* position: absolute
* width: (任何值除了auto)
* writing-mode: tb-rl
* zoom: (除 normal 外任意值)

14. 在IE6下,父级有边框的话,可能会造成子元素的margin失效

解决办法:触发haslayout;

15. IE6,7下给元素添加zoom 元素会支持宽高
*display: inline;
*zoom: 1;
*style 这条只在IE7及IE7之前的IE浏览器识别

16. 多个元素需要在行显示,最好给这行都加上浮动

17. 元素浮动之后,如果宽度可以固定,一定记得设置固定宽度
如果宽度需要内容撑开,就给它里边的块元素都加上浮动

19. IE6下双边距BUG
在IE6下,块元素有浮动有横向的margin,横向的margin值会被放大成两倍

解决办法: display:inline;

margin-left 一行元素左侧第一个元素有双边距

margin-right 一行元素右侧第一个元素有双边距

20. 在IE6下,一行元素的宽度之和 和 父级的宽度相差超过3px,则最后一行元素的下margin失效

解决办法:无

21. 在IE6下,元素的宽度,和父级宽度相差 小于3px,
并且两者浮动之后之间有注释或者内嵌元素,元素内容会被复制。

解决办法:可以用div把注释或者内嵌元素包起来

22. 在IE6,7下li本身没有加浮动,但是li的内容都浮动了,或者有两个以上的浮动,li下边就会有几个px的间隙。

解决办法:
1. 给li加浮动
2. 给li加vertical-align: top;

23. 在IE6下,当浮动元素和绝对定位元素,是同级关系的话(并且浮动元素的占位宽度 和父级小于3px),绝对定位元素会消失掉

解决办法:
把绝对定位元素单独包起来。

24. 在IE6下,父级的宽高是奇数的话,元素的right值和
bottom值会有1px的偏差.
解决办法: 无;

25. 在IE6,7下,子元素有相对定位的话,父级的overflow包不住它

解决办法: 给父级也加相对定位;

26. IE6不支持固定定位

解决办法
html {
height: 100%;
overflow: hidden;
position: relative;
}

body {
height: 100%;
overflow: auto;
margin: 0;
}

27. 在IE6(IE8及IE8之前的IE浏览器),不支持opacity

解决办法: filter: alpha(opacity = 40);

28. 在IE6,7下,不支持border-spacing这条样式

解决办法:
1. border-collapse: collapse;
2. cellspacing

29. 在IE6,7下input上下各有1px的间隙

解决办法: 给input加浮动

输入类型
input type = "text"
input type = "password"
textarea

30. 在IE6,7下输入类型表单控件上下各有1px的间隙

解决办法: 给控件加浮动

在IE6,输入类型表单控件border:none;无效
解决办法:
1. border:0;
2. 重置input的背景

31. 在IE6,7下,输入类型的表单控件,输入文字的时候,背景图会随着文字一块移动

解决办法:背景图加给父级

32. /*
\0 IE8,IE9,IE10,IE11
\9 IE10及IE10之前的IE浏览器
*,+ IE7及IE7之前的IE浏览器
_ IE6及IE6之前的IE浏览器
*/

33. 条件注释语句: 符合条件之后,
浏览器会把对应的注释中的内容解析出来
只在IE9及IE9之前的IE浏览器支持

34. IE6不支持PNG24的透明度

解决办法:JS 或者换格式

35. @import 不推荐使用
在样式表中引入新的样式表
并发加载
link

@import 必须写在样式表的最前边

36. !important 提升样式优先级

在IE6下,如果在!important下边再加一条同样的样式,会破坏掉!important,然后按照默认的优先级顺序显示

37. 在IE6下,通过margin负值,使元素移出父 级的区域,会被父级截掉

解决办法:给元素加相对定位

IE6的兼容性以及处理方法的更多相关文章

  1. ie6浏览器兼容性

    1.ie6双倍边距bug 块状元素设置float(左浮动或有浮动),并且设置margin值之后,第一个浮动的元素其左侧margin值为正常的2倍,如图,可以看到第一个元素的左侧边距于其他元素两两之间的 ...

  2. html5.js让IE(包含IE6)支持HTML5元素方法

    原文地址:http://blog.sina.com.cn/s/blog_62a36ec401018oqb.html html5.js让IE(包含IE6)支持HTML5元素方法 微软的最新浏览器IE8及 ...

  3. PNG24在ie6下的完美解决方法!(DD_belatedPNG)

    原网址:http://www.zjgsq.com/1629.html 之前写过一篇<js+css滤镜设置解决PNG24在IE6下显示问题> 解决方法不是很完美,使用起来也比较麻烦. DD_ ...

  4. 解决PNG图片在IE6中背景不透明方法_解决IE6中PNG背

    解决PNG图片在IE6中背景不透明方法_解决IE6中PNG背   目录 解决代码 解决png图片在html中 解决png作为网页背景-css 1.解决PNG图片在IE6中背景不透明的CSS与JS代码 ...

  5. IE6 一些兼容性问题及处理方法

    1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定mar ...

  6. (转)解决png图片在IE6下不透明的方法

    来源于:http://xzl52199.blog.163.com/blog/static/95206446201142174540220/ 一.传统的JavaScript方法 思路: 1.一个专门解决 ...

  7. CSS3新特性,兼容性,兼容方法总结

    css3手册css3手册 边框 border-radius 用于添加圆角效果 语法: border-radius:[ <length> | <percentage> ]{1,4 ...

  8. 【总结整理】关于IE6的兼容性

    1. /*IE6兼容性,input边框border:none无效,不能去掉,只能把背景颜色去掉*/ background: none; /*background-color:#fff ;*/ 2. / ...

  9. 解决header,footer等HTML5标签在IE(IE6/IE7/IE8)无效的方法

    HTML5的语义化标签以及属性,可以让开发者非常方便地实现清晰的web页面布局,加上CSS3的效果渲染,快速建立丰富灵活的web页面显得非常简单. HTML5的新标签元素有: <header&g ...

随机推荐

  1. 深入理解计算机系统_3e 第六章家庭作业 CS:APP3e chapter 6 homework

    6.22 假设磁道沿半径均匀分布,即总磁道数和(1-x)r成正比,设磁道数为(1-x)rk: 由题单个磁道的位数和周长成正比,即和半径xr成正比,设单个磁道的位数为xrz: 其中r.k.z均为常数. ...

  2. 以通配符(%)开始的like字符串,走索引

    在对oracle的SQL优化过程中经常会遇到[like'%abc']破坏索引的问题,但是如果真有此类需求,该如何在不破坏索引的基础上进行查询呢. [sql] view plain copy sys@m ...

  3. 初次使用Python脚本,proto协议文件转Lua代码

    使用IntelliJ IDEA编辑器编写Lua脚本的时候,安装一个插件 "EmmyLua" 可以对有代码提示功能 想把protoBuf协议文件转成Lua代码,然后给出代码提示 第一 ...

  4. Spark源码剖析(五):Master原理与源码剖析(下)

    一. 状态改变机制源码分析 在剖析Master核心的资源调度算法之前,让我们先来看看Master的状态改变机制. Driver状态改变  可以看出,一旦Driver状态发生改变,基本没有好事情,后果要 ...

  5. Eclipse Pydev添加MySQLdb模块,Windows下安装MySQL-python

    1.首先确保Windows下已经安装Python.Eclipse并且Eclipse已经集成Pydev能成功运行Python 2.下载MySQL-python 地址:http://www.codegoo ...

  6. 设计模式之 - 代理模式(Proxy Pattern)

    代理模式:代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问.代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理.很多可以框架中都有用 ...

  7. Java点滴之Java概述

    写在前面的话 2017年对我来说真是多灾多难的一年,在这过去的一年里发生的种种不幸,促使我下定决心一切要重新开始.在去年的夏天从公司裸辞后,来到了一个陌生的城市开启了新的求职历程,万万没想到的是,求职 ...

  8. [编织消息框架][netty源码分析]9 Promise 实现类DefaultPromise职责与实现

    netty Future是基于jdk Future扩展,以监听完成任务触发执行Promise是对Future修改任务数据DefaultPromise是重要的模板类,其它不同类型实现基本是一层简单的包装 ...

  9. K:正则表达式之进阶

    子表达式: 前面所介绍的关于重复匹配的知识,其重复匹配的字符只作用于紧挨着的前一个字符而言,而有时候要将一个集体(姑且用该概念进行称呼)进行重复多遍的进行匹配,则使用前面所介绍的知识,其是无法做到的. ...

  10. ASP.NET网页发布以及相关问题的解决

    今天做了一个统计站点的网页,想要发布一下,中间碰到不少问题,现在和大家分享一下! 这是我想要最终的网页结果: 1.发布站点到桌面(任意路径)       2.安装IIS   3.安装好后,打开IIS, ...