IE与FireFox对CSS支持不足问题汇总之二
【前言】CSS发展到2.0虽然得到了浏览器厂商的大力支持,在很多方面还是有不足,并没有完全参考规范。现在网站设计者们通常使用Hack CSS 方法或者编写两套CSS文件的方法解决不同浏览器的兼容性问题。以下就将平时所遇到的、阅读书籍时发现的问题,以及相应的解决方法做一个简单汇总。希望能给学习的同道一些启示,也希望大家集思广益,在评论中将自己发现的问题及解决办法写出来,共同学习提高。
2、ul列表对象在IE与FireFox中的不同表现。注意以下代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
#layout{
list-style:none;
margin-left:0px;
}
</style>
</head>
<body>
<div >
<ul id="layout">
<li>第一项目</li>
<li>第二项目</li>
<li>第三项目</li>
</ul>
</div>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
#layout{
list-style:none;
margin-left:0px;
}
</style>
</head>
<body>
<div >
<ul id="layout">
<li>第一项目</li>
<li>第二项目</li>
<li>第三项目</li>
</ul>
</div>
</body>
</html>
为了使列表的靠边距为0,代码中使用了margin-left:0;,在IE中得到了应有效果,而在Firefox中却还是存在一段边距。
问题及解决:ul与h1~h6等对象一样,本身就带了一定的样式。ul在默认情况下是存在一定的边距的。而这边距在IE中通过margin造成,在Firefox中由padding造成。因此,如果要在IE与Firefox中同时达到效果,必须同时定义padding与margin的值。