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