meta和title的顺序问题引起IE显示空白页

一个页面,在FF下显示正常,在IE下显示空白,完完全全的空白,没有报错,没有提示,本以为是服务器没开,结果查看空白页的源文件,又是可以看的,源文件完全正常,只能是IE解析的问题,那么是什么地方引起IE解析失败呢?
     经过排除法排查,最后锁定,居然是meta和title顺序的问题:
Java代码 复制代码  收藏代码
  1. <head>   
  2.   <title>管理页</title>   
  3.   <meta http-equiv="content-type" content="text/html; charset=utf-8" />   
  4.   <link rel="stylesheet" href="/css/admin.css" type="text/css" media="all"/>   
  5. </head>  
<head>
  <title>管理页</title>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <link rel="stylesheet" href="/css/admin.css" type="text/css" media="all"/>
</head>

上面的写法是空白,而下面的写法就正常显示:
<head>   
  1.   <meta http-equiv="content-type" content="text/html; charset=utf-8" />   
  2.   <title>管理页</title>   
  3.   <link rel="stylesheet" href="/css/admin.css" type="text/css" media="all"/>   
  4.   <link rel="stylesheet" href="/css/elements/externalLinks.css" type="text/css"/>   
  5. </head>  
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <title>管理页</title>
  <link rel="stylesheet" href="/css/admin.css" type="text/css" media="all"/>
  <link rel="stylesheet" href="/css/elements/externalLinks.css" type="text/css"/>
</head>


    顿悟!页面编码utf8是在meta中定义的,浏览器在读到编码前,认不出中文的title,于是解析失败!
    但是……IE你也太挫了吧?解析失败啥报错都没有??直接显示空白页,叫人怎么找错啊?
    对一般的站点来说,即使meta和title的顺序写反,应该也没问题,因为现在的动态程序一般会在程序输出的header中指定content-type为text/html;charset为utf-8,所以浏览器不需要读取meta中的编码信息就能知道编码了。
    查了一把,原来这个问题还真有大站点中过招,blogger.com就在05年时就有过该问题,也算是这些外国应用入驻中国的水土不服吧(没考虑Unicode的title,呵呵)

原文: http://touya.iteye.com/blog/265949

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值