如何解决utf8编码网页包含文件时前面有空行的问题
发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,小编给大家分享一下如何解决utf8编码网页包含文件时前面有空行的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!页面采用UTF8编码,头部和尾部用了模板包含文件的方法,结果头部和尾
千家信息网最后更新 2025年11月11日如何解决utf8编码网页包含文件时前面有空行的问题
BOM头:\xEF\xBB\xBF,PHP4、5尚对BOM无视,所以在解析前直接输出。对此 w3.org 标准 FAQ 中对此问题有一个专门的描述:
http://www.w3.org/International/questions/qa-utf8-bom
具体如下:
在UCS 编码中有一个叫做"ZERO WIDTH NO-BREAK SPACE"的字符,它的编码是FEFF。而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中。UCS规范建议我们在传输字节流前,先传输 字符"ZERO WIDTH NO-BREAK SPACE"。这样如果接收者收到FEFF,就表明这个字节流是Big-Endian的;如果收到FFFE,就表明这个字节流是Little- Endian的。因此字符"ZERO WIDTH NO-BREAK SPACE"又被称作BOM。
UTF-8不需要BOM来表明字节顺序,但可以用BOM来表明编码方式。字符"ZERO WIDTH NO-BREAK SPACE"的UTF-8编码是EF BB BF。所以如果接收者收到以EF BB BF开头的字节流,就知道这是UTF-8编码了。
Windows就是使用BOM来标记文本文件的编码方式的操作系统: WindowsXP Professional , 缺省字符集:中文
1) notepad : 可以自动识别出没有带 bom 的 utf-8 编码格式文件,但不可以控制保存文件时是否添加 bom , 如果保存文件,那么会统一添加 bom 。
2)editplus : 不能自动识别出没有 bom 的 utf-8 编码格式文件,文件保存时,选择UTF-8 格式,不会在文件头写上 BOM header.
3) UltraEdit : 对于字符编码的功能最为强大, 可以自动识别带 bom 和不带 bom 的 utf-8 文件 (可以配置) ; 保存的时候可以通过配置选择是否添加 bom.
(特别需要注意的是,保存一个新建立的文件时,需要选择另存为 utf-8 no bom 格式)
后来发现 Notepad 也对于 utf-8 bom 支持比较好,推荐大家使用。
小编给大家分享一下如何解决utf8编码网页包含文件时前面有空行的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
页面采用UTF8编码,头部和尾部用了模板包含文件的方法,结果头部和尾部无端端各多出一个约10px的空行,什么也没有。
原因是全部采用utf8编码,包含文件的时候,最后的二进制流中包含了多次UTF8 BOM标记,IE不能正常解析包含多个UTF8 BOM 标记的页面,直接替换成实际显示的回车,这样导致一个空行,而firefox却没有这个问题。
故如果模板采用包含的方法包含多个utf8文件需要用ultraedit保存时另存为功能 选择utf8 无bom格式保存即可。
另外,如果中文页面在html head标记中将title标记放在
BOM头:\xEF\xBB\xBF,PHP4、5尚对BOM无视,所以在解析前直接输出。对此 w3.org 标准 FAQ 中对此问题有一个专门的描述:
http://www.w3.org/International/questions/qa-utf8-bom
具体如下:
在UCS 编码中有一个叫做"ZERO WIDTH NO-BREAK SPACE"的字符,它的编码是FEFF。而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中。UCS规范建议我们在传输字节流前,先传输 字符"ZERO WIDTH NO-BREAK SPACE"。这样如果接收者收到FEFF,就表明这个字节流是Big-Endian的;如果收到FFFE,就表明这个字节流是Little- Endian的。因此字符"ZERO WIDTH NO-BREAK SPACE"又被称作BOM。
UTF-8不需要BOM来表明字节顺序,但可以用BOM来表明编码方式。字符"ZERO WIDTH NO-BREAK SPACE"的UTF-8编码是EF BB BF。所以如果接收者收到以EF BB BF开头的字节流,就知道这是UTF-8编码了。
Windows就是使用BOM来标记文本文件的编码方式的操作系统: WindowsXP Professional , 缺省字符集:中文
1) notepad : 可以自动识别出没有带 bom 的 utf-8 编码格式文件,但不可以控制保存文件时是否添加 bom , 如果保存文件,那么会统一添加 bom 。
2)editplus : 不能自动识别出没有 bom 的 utf-8 编码格式文件,文件保存时,选择UTF-8 格式,不会在文件头写上 BOM header.
3) UltraEdit : 对于字符编码的功能最为强大, 可以自动识别带 bom 和不带 bom 的 utf-8 文件 (可以配置) ; 保存的时候可以通过配置选择是否添加 bom.
(特别需要注意的是,保存一个新建立的文件时,需要选择另存为 utf-8 no bom 格式)
后来发现 Notepad 也对于 utf-8 bom 支持比较好,推荐大家使用。
看完了这篇文章,相信你对"如何解决utf8编码网页包含文件时前面有空行的问题"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
文件
编码
字符
标记
格式
页面
utf-8
问题
UTF-8
选择
自动识别
传输
网页
功能
多个
头部
实际
对此
尾部
接收者
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
方舟端游主播服务器
番禺区软件开发技校技工
襄阳金惠互联网科技有限公司
丰台区软件开发售后保障
电脑自定义功能软件开发
世界java版如何自制服务器
公安网络安全与执法专业就业方向
做流媒体服务器
深圳市迈优互联网科技公司
服务器如何进行诈骗
郑州子任网络技术
襄阳串口服务器多少钱
北京万理软件开发有限公司怎么样
新疆交通计算机网络技术学院
MBA答案软件开发
高校计算机网络技术大赛
游戏软件开发商推广海报
网络安全周主题宣传活动
网络技术服务公司名字
新奇软件开发
中科技网络技术
软件开发的流程是题
python 连接数据库的包
关于扶贫软件开发的公司
金融网络安全常识
军用软件开发文档通用要求
数据库加密技术示例
35岁了想做软件开发
做服务器系统
怎么清除数据库快照