IE6断头台问题
来源:互联网 发布:我的第一本淘宝开店书 编辑:程序博客网 时间:2024/06/05 16:20
这也是从书本中学习到的,就写写吧.
先看下面代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>css2</title>
<style type="text/css">...
a:hover{...}{background-color:#ccc;}
#layout{...}{
border:#35BB0C 5px solid;
width:400px;
background-color:#f2f2f2;
}
#left{...}{
border:#D4CA25 5px solid;
width:200px;
float:left;
background-color:#fff;
}
a{...}{display:block;}
</style>
</head>
<body>
<div id="layout">
<div id="left">
<strong>XML</strong>
<p>目前推荐遵循的是W3c于1998年5月12日推荐CSS2。W3C创建CSS标准的目的是以CSS取代HTML表格式布局,桢和其它表现的语言。纯CSS布局与结构式XHTML相结合能帮助设计师分离外观与结构,使站点的访问及维护更加容易。</p>
</div>
<a href="#">连接1</a>
<a href="#">连接2</a>
<a href="#">连接3</a>
<a href="#">连接4</a>
</div>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>css2</title>
<style type="text/css">...
a:hover{...}{background-color:#ccc;}
#layout{...}{
border:#35BB0C 5px solid;
width:400px;
background-color:#f2f2f2;
}
#left{...}{
border:#D4CA25 5px solid;
width:200px;
float:left;
background-color:#fff;
}
a{...}{display:block;}
</style>
</head>
<body>
<div id="layout">
<div id="left">
<strong>XML</strong>
<p>目前推荐遵循的是W3c于1998年5月12日推荐CSS2。W3C创建CSS标准的目的是以CSS取代HTML表格式布局,桢和其它表现的语言。纯CSS布局与结构式XHTML相结合能帮助设计师分离外观与结构,使站点的访问及维护更加容易。</p>
</div>
<a href="#">连接1</a>
<a href="#">连接2</a>
<a href="#">连接3</a>
<a href="#">连接4</a>
</div>
</body>
</html>
打开IE6,测试后,发现当鼠标移到连接2,3,4上时,发现div被砍掉一半,这就是IE6的一个著名的bug"断头台".
用号称最能支持css的firefox打开这个网页,发现背部的框的低部只去到连接4,说明背部的框的高度就只有连接1到连接4这个高度.很明显,IE的错误就在与此,它一开始并没有马上让高度和连接1到连接4的总高度对等,而是直接先等于一个浮动的框的高度,而事实上,载体的高度不应该与里面的浮动体的高度产生关系,所以当鼠标移动到连接2,3,4上时,发生一些计算的错误,导致框的高度在后来发生了变化.
要解决这个问题,书本提供的方法存在一点多余和累赘的成分,经过测试,其实从问题出发会找到更好的解决方案.在之前的分析就已经知道,问题的关键在于背景框高度的计算.所以,要解决这个问题,根本就是要让背景框的高度得到正确的计算.由此,这个问题又演变成"高度不能自适应"问题了.我发现,只要让背景框的底部能达到正确的长度即可,所以我在最下面(连接4的标签下面)加入一个占位框<div class="clear-div"></div>,只要让这个占位框在原来不应该计高度的的底部存在占位即可,所以加入CSS语句:.clear-div{height:0;overflow:hidden;clear:left;}其中最重要的是clear:left,这个语句可以使其占位框真正位于最下方.经过测试后,成功通过.
- IE6断头台问题
- ie6问题
- IE6捉迷藏问题
- ie6 安装问题
- ie6失真问题
- ie6 margin双倍问题
- ie6的clientWidth问题
- fancybox-IE6 样式问题
- IE6的重影问题
- My97DatePicker IE6使用问题
- ie6识别important问题
- IE6 3像素问题
- IE6的clear问题
- IE6解决PNG问题
- ie6 滤镜问题
- My97DatePicker IE6使用问题
- IE6 PNG 透明问题
- IE6 fixed问题
- Google正在测试新的Adsense样式暨谷歌输入法即将发布!
- 《给初学者的Windows Vista的补遗手册》之055
- 《给初学者的Windows Vista的补遗手册》之054
- Vista Start Menu v2.21简体中文语言文件新鲜出炉!
- Microsoft Updater Application Block 1.4.3 KeyValidator类设计 [翻译]
- IE6断头台问题
- 《给初学者的Windows Vista的补遗手册》之053
- 《给初学者的Windows Vista的补遗手册》之052
- 《给初学者的Windows Vista的补遗手册》之051
- 《给初学者的Windows Vista的补遗手册》之050
- 《给初学者的Windows Vista的补遗手册》之049
- 《给初学者的Windows Vista的补遗手册》之048
- 《给初学者的Windows Vista的补遗手册》之047
- 《给初学者的Windows Vista的补遗手册》之046