1.使用声明
你必须经常在html网页头部放置一个声明,推荐使用严格的标准。例如
or,forXHTML:
最后你需要是IE6进入兼容模式,这已经足够兼容了。
2.使用position:relative
设置一个标签position:relative可以解决很多问题,特别是曾经有过看不见的经历或者奇怪布局的框架。明显的,你需要小心,绝对位置放置的子元素是否都参照找到新位置。
3.为浮动元素使用display:inline
为浮动元素使用display:inline。浮动元素会有一个著名的IE6双边距marginbug。假如你设置了左边距5px但实际上得到了10px左边距。display:inline可以解决这个问题,尽管它不是必需的,但是css仍然有效。
4.设置元素启动hasLayout
大部分IE6(IE7)的渲染问题都可以通过起用元素的hasLayout属性来兼容。
这是IE内置的设定,确定一个内容块相对其它内容块是有界限和位置的。当你需要设置一个行内元素例如一个连接变成块状元素或者是透明效果,设置hasLayout也是必须的。
5.修复重复字符的bug
IE6兼容性解决方案修复重复字符的bug。复杂的布局会触发一个bug:浮动对象的最后字符会出现在已经清除浮动的元素后面。这里有几种解决的办法,部分是理想的,并且一些测试和出错是必须的。
(1)确保浮动元素都使用:display:inline;
(2)最后一个浮动元素使用margin-right:-3px;
(3)在浮动对象最后一个元素后使用一个条件注释。例如这里输入注释…(4)在容器内的最后使用一个div空标签(它也必须设置90%宽度甚至更小)
6.使用a标签完成可点击和hover原理
IE6只支持a标签的css定义hover效果
你可以使用它去控制javascript启动的widgets,使得他们仍然保持键盘操作。这里有个二择一的问题,但是a标签是所有解决方案中最可靠的。