免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 11530 | 回复: 22
打印 上一主题 下一主题

[TITLE的BUG]你的IE浏览器有这个BUG么?请求版主删了此帖 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-16 19:10 |只看该作者 |倒序浏览
你用用这段UTF-8的html代码在IE下显示就知道我说的问题了,只要
在utf-8编码下,TITLE的text值的最后一个字是的,就会出问题---什么也看不到
(注:此代码不够规范.重新写过的标准代码,请看第15楼)

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
  2. <HTML lang=zh xml:lang="zh" xmlns="http://www.w3.org/1999/xhtml">
  3. <HEAD>
  4. <TITLE>的</TITLE>
  5. <META http-equiv=Content-Type content="text/html; charset=UTF-8" />
  6. </HEAD>
  7. <BODY>
  8. 我的TITLE就是    的!
  9. 你可以看到我么?
  10. </BODY></HTML>
复制代码

详细测了一下只要
TITLE 在 META charset 的前面,并且TITLE的text值的最后一个字是"的"浏览器就会什么也不显示,不是"的"就会显示,
虽然我的代码写的不够常规,不过有这样的差异,是不可理解的。

[ 本帖最后由 achun.shx 于 2007-8-7 12:57 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-09-17 08:56 |只看该作者
绝对不是bug

论坛徽章:
0
3 [报告]
发表于 2006-09-17 12:19 |只看该作者
原帖由 geel 于 2006-9-17 08:56 发表
绝对不是bug

先说说你的浏览器能显示出body中的文字么?

论坛徽章:
0
4 [报告]
发表于 2006-09-17 19:15 |只看该作者
IE 6
Fx 1.5.0.7

都可以

论坛徽章:
0
5 [报告]
发表于 2006-09-18 19:53 |只看该作者
UTF-8的?还是GB*的误作UTF?

不相信是bug

论坛徽章:
0
6 [报告]
发表于 2006-09-18 20:44 |只看该作者
原帖由 achun.shx 于 2006-9-17 12:19 发表

先说说你的浏览器能显示出body中的文字么?


所有都正确显示

论坛徽章:
0
7 [报告]
发表于 2006-09-19 11:33 |只看该作者
楼上两位,保存的文本是utf-8么?
这个问题是针对utf-8编码的,
我和别人讨论过这个,认为算不算BUG不是重点
但说明了一件事情,ie在这个问题的处理上,采取的策略是
首先,默认读入的html的编码是GB2312,
直到,读取到meta 的 charset,才去识别处理对应的编码
在此之前如果遇到了编码上的错误就停止
在这个例子里由于title在charset前面,
所以ie开始会以gb2312(对我们用的来说)编码识别title中的text---的
可是我们的这个--的 是用utf-8的编码保存的,而他的值找不到与他对应的gb2312编码的汉字,所以就停止了。类似象--的 这样的情况的字还有很多。
这也许就是IE的预渲染吧。
firefox就没有这样的错误。也许他没有用预渲染。
不直到标准里面有没有这样一条,title必须在meta 的 charset之后出现。
如果没有,那就是说,IE想做好这件事情,因此动了一番脑筋,可是结果确不令人满意。
预渲染的概念可是很不错,做不好的预渲染就没有用了,普通用户怎么会直到这些呢!

论坛徽章:
0
8 [报告]
发表于 2006-09-19 12:43 |只看该作者
楼上两位,保存的文本是utf-8么?
这个问题是针对utf-8编码的,
我和别人讨论过这个,认为算不算BUG不是重点
但说明了一件事情,ie在这个问题的处理上,采取的策略是
首先,默认读入的html的编码是GB2312,
直到,读取到meta 的 charset,才去识别处理对应的编码
在此之前如果遇到了编码上的错误就停止
在这个例子里由于title在charset前面,
所以ie开始会以gb2312(对我们用的来说)编码识别title中的text---的
可是我们的这个--的 是用utf-8的编码保存的,而他的值找不到与他对应的gb2312编码的汉字,所以就停止了。类似象--的 这样的情况的字还有很多。
这也许就是IE的预渲染吧。
firefox就没有这样的错误。也许他没有用预渲染。
不直到标准里面有没有这样一条,title必须在meta 的 charset之后出现。
如果没有,那就是说,IE想做好这件事情,因此动了一番脑筋,可是结果确不令人满意。
预渲染的概念可是很不错,做不好的预渲染就没有用了,普通用户怎么会直到这些呢!


    

Snap1.gif (14.44 KB, 下载次数: 121)

Snap1.gif

论坛徽章:
0
9 [报告]
发表于 2006-09-19 13:33 |只看该作者
楼上!你手工去选择utf-8!!!!不嫌麻烦么?
<META http-equiv=Content-Type content="text/html; charset=UTF-8" />
这一条就写在html文件里呀!

论坛徽章:
0
10 [报告]
发表于 2006-09-19 15:46 |只看该作者
原帖由 achun.shx 于 2006-9-19 15:33 发表
楼上!你手工去选择utf-8!!!!不嫌麻烦么?
<META http-equiv=Content-Type content="text/html; charset=UTF-8" />
这一条就写在html文件里呀!


楼上!!!!!!!
我打开 Encoding 只是为了让你看这个文件是自动选为 UTF-8 的!!!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP