勇敢的小鹿

从事着代码生涯的小鹿,悄悄走到你的身边...

 

关于Asp.net2.0下Div+Css布局页面样式实效的解决方法

问题描述:
     最新写了一个网站,采用的Div+CSS方式进行布局的。在调试的过程中发现IE7和FF都兼容,但在Ie6不兼容的情况,部分层的样式不起作用,完全未执行,就像失去控制一样。重写了布局两次未果,难道真是Ie6有这么难的兼容性。
解决思路:
     step1:找一台Ie环境的机器,装上Dw进行布局,发现该css在IE6兼容问题不大,局部有细小改动即可。
     step2:应用该css到项目中,IE7和FF正常,但IE6的问题仍然存在。不死心,将Dw环境下的做测试的的Html静态页,传到服务器试试。解析结果跟单机一样。
     step4:分析原因应该是Asp.net的解析和html的解析结果不一样。试着把静态页的内容粘贴到Aspx文件中测试,结果还是样式还是乱的。
     step5:把aspx文件的执行结果和html文件的对比,没有太多的变化。难道是asp.net内部解析执行的问题??
     step6:上网查资料,注释会影响样式的执行,于是去掉css文件中写的样式注释,一并去掉了页面的样式注释并执行。测试结果,大体布局出来了,但局部样式还是未应用到。
     step7:考虑文件编码的问题了,是不是css样式文件的编码认不到?
查看css文件的属性原来编码是ANSI方式,而Asp.net支持的是UTF-8的方式。将css文件以记事本的方式打开,另存为Utf-8编码文件。测试效果达到html文件执行效果。
     step8:用!important局部修正Ie6执行样式,页面执行结果达到了预期的效果。

 总结:
      Dw环境下,Css文件的编码方式ANSI。应用到Asp.net2.0的项目中,应修改其编码方式。
      Css样式文件最好不做注释,注释在有些时候解析会出错然后导致样式异常。

posted on 2008-03-01 17:47  明月清风路  阅读(3220)  评论(5编辑  收藏  举报

导航