IE不能识别UTF-8编码问题

    技术2022-05-20  56

      我们在使用IE时候偶尔会发现以下问题:

    某网页打开了是空白一片。 使用火狐却可以看。 IE中手动设置一下编码才能看到 在网页设计的时候TITLE里填写奇数时网页空白,偶数时却可以显示

      问题出在哪里?原来IE解析HTML界面的时候,顺序解析HTML标签,而火狐等会优先解析HEADER META信息,所以不存在这个问题。那么在如下的定义中。

     

     <html> <head> <title>界面设计器</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <!--<link rel="stylesheet" type="text/css" href="./styles.css" mce_href="styles.css">--> </head>

    我们将看不到界面。因为UTF-8是三个字节表示一个汉字,而GBK是2个字节一个汉字,当TITLE里面字符为奇数时,里面有15个字节,对应GBK的话会多余一个字节和TITLE的结尾“<”一起成为乱码。造成整个界面无法解析。

     

    解决办法很简单。 要么TITLE改为偶数。要么把编码定义信息放在TITLE前面如下

    <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>界面设计器</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <!--<link rel="stylesheet" type="text/css" href="./styles.css" mce_href="styles.css">--> </head>


    最新回复(0)