IE6、7、8浏览器兼容性问题解决方案

需积分: 9 1 下载量 182 浏览量 更新于2024-09-15 收藏 50KB DOC 举报
IE6, 7, 8 兼容问题大全 在 web 开发中,浏览器的兼容性问题一直是一个棘手的问题,特别是在使用 CSS 设计网站时,IE6、7、8 等浏览器的兼容性问题尤其重要。本文将总结 IE6、7、8 及 Firefox 浏览器的兼容问题,并提供相应的解决方案。 **DIV+CSS 代码设计网站下 IE6、7、8 及 Firefox 浏览器兼容问题** 在 CSS 设计网站时,浏览器的兼容性问题是一个非常重要的问题。IE6、7、8 等浏览器的兼容性问题尤其重要,以下是常见的兼容问题和解决方案: **1. 垂直居中问题** 解决方案:使用 `vertical-align: middle;` 将行距增加到和整个 DIV 一样高,例如:`line-height: 200px;` 然后插入文字,就垂直居中了。但是,这种方法有一个缺点,就是要控制内容不要换行。 **2. Margin 加倍的问题** 解决方案:在设置为 float 的 div 中,IE 下设置的 margin 会加倍,这是一个 IE6 都存在的 bug。解决方案是,在这个 div 里面加上 `display: inline;` 例如:<`div id="imfloat">` 相应的 CSS 为 `#IamFloat { float: left; margin: 5px;/*IE 下理解为 10px*/ display: inline;/*IE 下再理解为 5px*/}` **3. 浮动 IE 产生的双倍距离** 解决方案:使用 `display: inline;` 使浮动忽略,例如:`#box { float: left; width: 100px; margin: 0 0 100px; display: inline; }` **4. Block 与 Inline 元素** Block 元素的特点是,总是在新行上开始,高度、宽度、行高、边距都可以控制(块元素);Inline 元素的特点是,和其他元素在同一行上,不可控制(内嵌元素)。例如:`#box { display: block; /* 可以为内嵌元素模拟为块元素 */ display: inline; /* 实现同一行排列的效果 */ display: table;` **5. IE 与宽度和高度的问题** 解决方案:IE 不认得 min- 这个定义,但实际上它把正常的 width 和 height 当作有 min 的情况来使。这样问题就大了,如果只用宽度和高度,正常的浏览器里这两个值就不会变,如果只用 min-width 和 min-height 的话,IE 下面根本等于没有设置宽度和高度。例如:`#box { width: 80px; height: 35px; } html > body #box { width: auto; }` **结论** 浏览器的兼容性问题是一个非常重要的问题,特别是在使用 CSS 设计网站时,IE6、7、8 等浏览器的兼容性问题尤其重要。本文总结了 IE6、7、8 及 Firefox 浏览器的兼容问题,并提供了相应的解决方案,希望能够帮助读者更好地解决浏览器的兼容性问题。