IE6不解析某些CSS代码的解决方法
网页采用了 UTF-8 编码格式,这本来没有问题,问题是外部 CSS 文件默认是 ANSI 编码,并没有保存为 UTF-8 格式。可能你会发现在一般情况下这样也是没有问题的,然而当 CSS 文件中包含有中文注释时就可能不尽如人意了!
估计是 IE6 版本以下的浏览器在解析这个 CSS 文件时因为编码问题而无法正确解析,所以才会发生 CSS 在 IE6 下不起作用的情况。看来微软已注意到这个问题,在 IE7 中把它修复了。但是用IE6 的人还是不少。因此这个问题需要解决:
方法一:把 CSS、JS 和网页文件都统一保存为 UTF-8 格式。
方法二:去掉 CSS、JS 中的中文注释,或者改为英文。
上文为IE6因为编码问题无法正确解析CSS文件
有时候我们发现我们写的html页面引用外部css文件的时候在IE7和FF中能够很好的被解析,即能正常显示,可在IE6中却完全没有被解析,即 css文件里的样式根本没应用到我们的html页面,这是怎么回事?开始我把css文件里头的所有样式都复制粘贴到html页面中的<style></style>中,这样做以后,IE6、IE7、FF都能正常显示了,这也就说明外部的css文件应该是存在什么问题了,为什么在IE6中出现这问题,而在IE7和FF中却没有?网上google了下,发现是IE6中对页面的编码有严格的要求,我查看了下,朋友发过来的css文件用的编码是GB2312的,而html文件用的是utf-8的,原来问题就出在这里了,我把css文件内容的编码用ed改成utf- 8,再次测试的时候,一切恢复正常了,还有就是我发现朋友的css文件里面用中文注释,严重建议朋友们不要在css文件里面用中文来注释,这样也会引起编码的问题。
相关文档:
position 有三个值,static(静态)、relative(相对)、absolute(绝对) fix(固定布局);由于static是所有页面元素的默认值,因此设置元素的定位类型时几乎不用这个值,除非用于覆盖之前的定义。
对于后两者,一般应用:在一个相对定位的元素里面放置一个绝对定位的元素,如图:
子元素B可以通过top、right、bottom、le ......
一.使用css缩写
使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《常用css缩写语法总结》,这里
就不展开描述。
二.明确定义单位,除非值为0
忘记定义尺寸的单位是CSS新手普遍的错误。在HTML中你可以只写width="100",但是在CSS中,你必须给一个准确的单
位,比如:width: 100px width: ......
区别不同浏览器的CSS hack写法:
区别IE6与FF:
background:orange;*background:blue;
区别IE6与IE7:
background:green !important;background:blue;
区别IE7与FF:
&nb ......