`

ie6, ie7兼容性问题以及处理办法汇总

 
阅读更多
1、IE6中绝对定位位置错误
问题描述:在ie6中,如果参照物没有触发haslayout ,那么绝对定位的容器的left和bottom就会有问题。
解决办法:在相对定位的父容器上加入 zoom:1 来触发ie的haslayout即可解决。
小技巧:通常我们在设置一个容器为position:relative的时候 ,都会加上zoom:1来解决很多ie下的问题。

2IE6中绝对定位1像素偏差
问题描述:在 IE6 下定位元素的父级宽高都为奇数时,那么在 IE6 下定位元素的 right和bottom都有1像素的偏差。
解决办法:设为偶数。
<style>
#box1{width:303px; height:303px;border:1px solid black; position:relative;}
#box2{ width:50px; height:50px; background:#7c1; position:absolute;right:-1px;bottom:-1px;}
</style>

<body>
<div id="box1">
	<div id="box2"></div>
</div>
</body>

3、IE6浮动元素双边距bug
问题描述:IE6下块元素有浮动和横向margin的时候,横向的margin值被放大成两倍。
解决办法:给浮动元素加 display:inline。
<style>
body{margin:0;}
.wrap{float:left;border:2px solid #000;}
.box{width:100px;height:100px;background:red;margin:0 100px;float:left;display:inline; }
/*
	IE6下的双边距BUG:
	在IE6下,块元素有浮动和横向margin的时候,横向的margin值会被放大成两倍
	解决办法: display:inline;
*/
</style>

<body>
<div class="wrap">
<div class="box"></div>
</div>
</body>

4、IE67下li底部间隙的BUG
问题描述:在ie67下,li本身没浮动,但是li的内容有浮动,li下边就会产生一个间隙。
解决办法:给li设置 float:left或者给li加vertical-align:top。
<style>
.list{ width:300px;margin:0;padding:0;}
.list li{ list-style:none;height:30px;border:1px solid #000; font-size:12px; line-height:30px; vertical-align:top;}
.list a{float:left;}
.list span{float:right;}
/*
	IE6,7下li的间隙
	在IE6,7下li本身没浮动,但是li内容有浮动的时候,li下边就会产生几px的间隙
	解决办法: 1.给li加浮动 或者 2.给li加vertical-align:top;
*/
</style>

<body>
<ul class="list">
	<li>
    	<a href="#">文字文字文字文字文字</a>
        <span>作者</span>
    </li>
    <li>
    	<a href="#">文字文字文字文字文字</a>
        <span>作者</span>
    </li>
</ul>
</body>


5、IE6下最小高度问题

问题描述:在IE6下高度小于19px的元素,高度会被当做19px来处理。

解决办法:设置font-size:0;

<style>
body{ margin:0;background:#000;}
.box{height:5px;background:red; font-size:0;}
/*
	在IE6下高度小于19px的元素,高度会被当做19px来处理
	解决办法:font-size:0; 或者 overflow:hidden;
*/
</style>

<body>
<div class="box"></div>
</body>

6、ie6 下子级的相对定位

问题描述:ie6 下父级的overflow:hidden;是包不住子级的相对定位的。

解决办法:父级也设为相对定位。

<style>
#box1{width:500px; height:300px; background:blue; overflow:hidden;position:relative;}
#box2{width:300px; height:500px; background:yellow; position:relative;}
</style>
</head>
<body>
<div id="box1">
	<div id="box2"></div>
</div>
</body>

7、在IE6下子元素margin问题

问题描述:在IE6下父级有边框的时候,子元素的margin值消失。

解决办法:触发父级的haslayout。

<style>
body{margin:0;}
.box{background:blue;border:1px solid #000;zoom:1;}
.div{width:200px;height:200px;background:red;margin:100px;}
</style>

<body>
<div class="box">
	<div class="div"></div>
</div>
</body>

8、在IE6下的文字溢出BUG

问题描述:子元素的宽度和父级的宽度相差小于3px的时候或两个浮动元素中间有注释或者内嵌元素。

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

<style>
.box{ width:400px;}
.left{float:left;}
.right{width:400px;float:right;}
</style>

<body>
<div class="box">
	<div class="left"></div>
    <div><!-- IE6下的文字溢出BUG --><span></span></div>
    <div class="right">↓leo是个大胖子</div>
</div>
</body>

9、绝对定位元素消失

问题描述:当浮动元素和绝对定位元素是并列关系的时候,在IE6下绝对定位元素会消失。

解决办法:给定位元素外面包个div。

<style>
.box{ width:200px;height:200px;border:1px solid #000; position:relative;}
span{width:50px;height:50px;background:yellow; position:absolute;right:-20px;top:0;}
ul{width:150px;height:150px;background:Red;margin:0 0 0 50px;padding:0; float:left; display:inline;}
</style>

<body>
<div class="box">
	<ul></ul>
    <span></span>
</div>

10、表单控件1px间隙

问题描述:在IE6,7下输入类型的表单控件上下各有1px的间隙。

解决办法:给input加浮动。

<style>
.box{ width:200px;height:32px;border:1px solid red;}
input{width:100px;height:30px;border:1px solid #000;margin:0;padding:0; float:left;}
</style>
<div class="box">
	<input type="text" />
</div>

11、表单控件加border:none无效

问题描述:在IE6,7下输入类型的表单控件加border:none无效。

解决办法:重置input的背景。

.box{ width:200px;height:32px;border:1px solid red;background:yellow;}
input{width:100px;height:30px;border:none;margin:0;padding:0; float:left; background:#fff;}
<div class="box">
	<input type="text" />
</div>

12、表单控件背景图片会移动

问题描述:在IE6,7下输入类型的表单控件输入文字的时候,背景图片会跟着一块移动。

解决办法:把背景加给父级。

.box{ width:100px;height:30px;border:1px solid red;background:yellow; background:url(ball.png) no-repeat;}
input{width:100px;height:30px;border:none;margin:0;padding:0; float:left; background:none;}
<div class="box">
	<input type="text" />
</div>

13、ie6下png

问题描述:ie6不支持png24的图片

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
body{ background:#000;}
.box{width:400px;height:400px;background:url(img/png.png);}
</style>
<!--[if IE 6]>
<script src="DD_belatedPNG_0.0.8a.js"></script>
<script>
DD_belatedPNG.fix('.box');
</script>
<![endif]-->
</head>
<body>
<div class="box"></div>
</body>
</html>



分享到:
评论

相关推荐

    IE.JS解决IE兼容性问题方法汇总

    **IE.JS** 是一个专门用来解决Internet Explorer(尤其是IE5、IE6)浏览器兼容性问题的JavaScript库。它的核心目标是让这些老旧版本的IE能够更好地遵循W3C的标准,提升对CSS2、CSS3选择器的支持,并修复HTML和CSS的...

    div+css 解决ie6兼容问题总汇

    在网页开发中,IE6(Internet Explorer 6)作为一个老版本的浏览器,常常带来一系列的兼容性问题。本文主要汇总了使用div+css布局时如何解决IE6的常见兼容问题。 1. **条件注释**:这是针对IE6浏览器的一个特殊解决...

    前端设计IE6IE7IE8IE9FF问题汇总IE和FirFox兼容问题[参照].pdf

    在前端开发过程中,确保网页在不同的浏览器间具有良好的兼容性是一项重要的任务...同时,使用现代的前端框架和库,如React、Vue或Angular,也可以帮助减轻这些兼容性问题,因为它们通常会处理大部分浏览器兼容性工作。

    IE和Mozilla中脚本兼容性汇总

    在开发Web应用时,浏览器兼容性问题是一个常见挑战,尤其是涉及到JavaScript脚本的时候。IE(Internet Explorer)和Mozilla(包括Firefox)对JavaScript事件处理和事件对象的处理方式存在差异,这给开发者带来了额外...

    浏览器兼容问题汇总

    在前端开发中,浏览器兼容性问题一直是困扰开发者的一大难题。不同的浏览器对CSS的支持程度不一,尤其是对于老旧版本的Internet Explorer(如IE6、IE7)、Firefox等,由于它们对CSS标准的实现存在差异,往往会导致...

    js在ie和FireFox下兼容问题汇总

    JavaScript 在不同浏览器之间的兼容性问题一直是开发者面临的重要挑战,尤其是IE和Firefox之间的差异。本文将详细探讨这些兼容性问题,并提供相应的解决方案。 1. `document.form.item` 问题: - 在IE中,可以通过...

    IE6兼容性问题及IE6常见bug详细汇总

    在前端开发过程中,IE6浏览器的兼容性问题一直困扰着开发者。由于其独特的解析机制和对CSS、HTML标准的支持不足,导致了许多常见的显示异常。以下是一些关于IE6兼容性和bug的详细解释及其解决方案: 1. **IE6怪异...

    常见浏览器兼容性问题汇总.doc

    【浏览器兼容性问题汇总】 在Web前端开发过程中,尤其是在处理PC端和移动H5端时,浏览器兼容性问题是一项常见的挑战。不同的浏览器对HTML、CSS和JavaScript的支持程度不同,这可能导致在某些浏览器中正常显示的网页...

    浏览器兼容性问题大汇总

    浏览器兼容性问题一直是前端开发者面临的重要挑战。本文将深入探讨其中的部分问题,帮助开发者更好地理解和解决这些问题。 1. JavaScript 问题: - HTML 对象获取:在 FireFox 中,应始终使用 `document....

    浏览器兼容性汇总

    #### 一、JavaScript兼容性问题 ##### 1. HTML对象获取问题 - **火狐(Firefox)**: 使用 `document.getElementById("idName")` 获取DOM元素。 - **IE**: 支持 `document.idname` 和 `document.getElementById("id...

    IE各版本hack汇总

    通过上述方法,开发者可以有效地解决IE各版本浏览器之间的兼容性问题,确保网站在不同的IE版本下都能呈现出一致的视觉效果和用户体验。然而,随着现代浏览器的发展和HTML5、CSS3标准的普及,过度依赖“hack”并不是...

    CSS在不同浏览器的兼容性问题

    描述中的“CSS兼容性问题汇总文档”意味着存在一份文档,详细列举了CSS在不同浏览器中遇到的常见兼容性问题以及相应的解决策略。以下是这些问题的详细说明: 1. **浏览器解析差异**:每个浏览器都有自己的内核,如...

    IE问题解决方法汇总.zip

    6. **兼容性问题**:对于一些新网页或Web应用,IE可能无法正确显示。解决办法可能包括启用“兼容性视图”,或者安装微软的“兼容性视图更新”。 7. **修复IE**:如果问题严重,可能需要通过控制面板的“程序和功能...

Global site tag (gtag.js) - Google Analytics