编码导致 html和aspx 样式差异,变形

 前几天做页面,排好的html页面复制到aspx页面上就是会出现差异,比如字体定义无效,基本的表现就是怎么改样式都没显示或只有某些浏览器正常,搞了半天才发现是编码问题,DW默认新建的文件编码是gb2312的,vs默认是utf-8的,时间原因也没重新排,就在web.config的Configuration节点下对这个页面单独设置了编码。

 

代码

<?xml version="1.0"?>
 <configuration>
   <system.web>
     <globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8"/>
   </system.web>
   <location path="RankList.aspx">
     <system.web>
       <globalization fileEncoding="gb2312" requestEncoding="gb2312" responseEncoding="gb2312"/>
     </system.web>
   </location>
 </configuration>

 

 

出现修改样式无效时通常需要做下面的几步:
  

  •   确认所修改的样式文件是否是当前页面的样式文件(多个环境的情况)
  •   确认文件中的路径是否正确(可能手误多写或少写)
  •   如果上面两点都确认没问题或只是一部分样式失效,基本可以确定是文件的编码问题

  大家都知道使用“UTF-8”比“GB2312”跨平台的兼容性更好,却不一定知道文件的编码跟文件编码的申明不是一回事,以为只要申明了文件的编码类型就是改了文件的编码,导致很多时候只是简单的申明了文件的编码类型,而并没有真的修改文件编码类型,当浏览器以申明的编码类型去解析文件时,由于文件的实际编码跟申明不同,出现解析不正确的问题。
以上问题如何产生呢?
  只修改了申明,没有保存与申明对应的文件编码类型
  在不同文件间拷贝时,两个文件间的编码不一样
  上面的问题只要再另存一份,选择跟申明一样的编码类型即可解决。
  如果上面的方法都没有作用的话,可能就是编辑软件的问题啦,建议换个编辑器试试。

 

 

  UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码。UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强。UTF-8编码的文字可以在各国支持UTF8字符集的浏览器上显示。如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,他们无需下载IE的中文语言支持包。

  GBK是国家标准GB2312基础上扩容后兼容GB2312的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBD大。

  GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换:

  对于一个网站、论坛来说,如果英文字符较多,则建议使用UTF-8节省空间。不过现在很多论坛的插件一般只支持GBK。

时间: 2024-09-22 14:09:11

编码导致 html和aspx 样式差异,变形的相关文章

默认apache编码导致DEDECMS乱码及其他乱码总结

朋友的dedecms乱码,文件的编码以及head里面的meta的编码都是正确的,把生成的HTML下载到本地打开,也都是正常的,一放到服务器就乱码. 经过更为细致的检查,发现他在根目录下的.htaccess里面配置了AddDefaultCharset UTF-8,这样就会导致apache默认使用utf-8编码向浏览器发送数据,客户的dedecms是GBK编码,所以自然就乱码了,所以然还有人在.htaccess里面配置这个...下面在网上找到的资料: 首先,可以使用AddDefaultCharset

url二次编码导致404的问题

问题描述 服务器是tomcat+nginx;第三方要通过某个url提供给我们一些参数,但这些参数中有一些进行了二次编码,如:phone_place=%B1%B1%BE%A9%CA%D0%D6%D0%B9%FA%D2%C6%B6%AFGSM&phone_place_encode=%25B1%25B1%25BE%25A9%25CA%25D0%25D6%25D0%25B9%25FA%25D2%25C6%25B6%25AFGSM:于是就导致请求总是404找不到.在tomcat的server.xml中设置

文件编码导致jquery失效的解决方法

在使用jquery编写图片滚动效果时,发现必须把图片滚动部分放到单独的页面里,然后在首页用<iframe>调用才能正确显示,并且不提示js错误. 最后试验无数次,结果发现是jquery所在文件的编码和网页编码不同,全部改为utf-8,正常显示.

文件编码导致jquery失效的解决方法_jquery

在使用jquery编写图片滚动效果时,发现必须把图片滚动部分放到单独的页面里,然后在首页用<iframe>调用才能正确显示,并且不提示js错误.最后试验无数次,结果发现是jquery所在文件的编码和网页编码不同,全部改为utf-8,正常显示.

PHP中遇到BOM、&amp;lt;feff&amp;gt;编码导致json_decode函数无法解析问题_php技巧

昨天同事遇到一个奇怪的问题,就是以下代码,无法通过JSON校验,也无法通过PHP的json_decode函数解析. 复制代码 代码如下: [     {         "title": "",         "pinyin": ""     } ] 可能聪明的你已经猜到其中包含有不看见的特殊字符,在vim下查看: 复制代码 代码如下: [     {         <feff>"title&quo

如何解决html网页编码导致jsp页面乱码

html页面中这段不起眼的代码<meta http-equiv="Content-Type" content="text/html; charset=GBK">,错把如果charset=GBK设置为charset=UTF-8的话,即使jsp页面做了中文乱码处理,还是会出现乱码 jsp中文转码如下: String name = new String(request.getParameter("uname").getBytes(    &

关于字符编码,你所需要知道的

字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题.这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助. 还是得从ASCII码说起   说到字符编码,不得不说ASCII码的简史.计算机一开始发明的时候是用来解决数字计算的问题,后来人们发现,计算机还可以做更多的事,例如文本处理.但由于计算机只识"数",因此人们必须告诉计算机哪个数字来代表哪个特定字符,例如65代表字母'A',66代表字母'B',以此类推.但是计算机之间字符-数字的对应关系必须得一致,否

浏览器解析js生成的html出现样式问题的解决方法_javascript技巧

我实现的功能是添加标签,无刷新地添加到标签列表的最后,见下图中第二行,样式明显有问题 我反反复复地检查了chrome console的html结构,都是一样一样的,在IE和FF下我也认真比较过的,还是没有区别.见下图 同样的html结构,同样的style,竟然展现的样式差异很大,一时没了想法,像个无头苍蝇.索性我就把console下的html复制到notepad++进行对比,看出了一点端倪,见下图.左侧为js生成的html,右侧为页面(.aspx)中的html 引起样式差异的原因可能就是左侧缺少

为什么CSS样式表在IIS中会失效?

最近发现我的css样式表在.net2.0中测试时发挥正常,但发布到IIS上后打开就会有问题,第一次打开页面后,样式表没有起作用,如果点页面中的链接返回到本页时就正常了.不知道为什么, google了下下,找到了若干原因,经过测试,原来是编码有问题,我直接拷贝过来的css与js文件,存储格式是ansi的,重新保存了一下后再次发布,成功了,哈哈...好久了噢,终于解决啦! 现附原文于下: 经常有人遇到ASP.NET 2.0(ASP.NET 1.x中可能是有效的)中CSS失效的问题,现将主要原因和解决