如何消除网页顶部的一行空白?
更新日期:2024-06-15 22:46:36 来源:网络
昨天群里一朋友询问网页顶部一行空白无法去除的解决办法。常见的解决办法均不能解决问题。深入研究了下,总结几点以加强记忆。
一、没有正确使用margin设置边距,margin指的是空白长度,用于控制容器中的内容和容器边缘的距离。
对于浏览器来说,源代码里回车符都不大会解释输出,但是偶尔也会出现源代码里的回车造成显示页面也换行的问题(linux和windows的回车符在文件编码中不同),这个问题就要注意一下代码的规范性。
三、编码问题。 类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(_0xEF _0xBB _0xBF,即BOM——Byte Order Mark)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。但对于 PHP来说,PHP在设计时就没有考虑BOM的问题,不会忽略UTF-8编码的文件开头BOM的那三个字符,会把BOM作为该文件开头正文的一部分。 由于 必须在<?或者<?php后面的代码才会作为PHP代码执行,所以将会造成在页面上输出这三个字符,显示效果就要看浏览器了,一般是一个空行 或是一个乱码。由于在html一开头有这3个字符的存在,即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部。此问题除了能使网页莫名出现一行空白外 ,由于受COOKIE送出机制的限制,在这些文件开头已经有BOM的文件中,COOKIE无法送出(因为在 COOKIE送出前PHP已经送出了文件头),所以登入和登出功能失效。一切依赖COOKIE、SESSION实现的功能全部无效。 解决办法: 在编辑、更改任何文本文件时,请务必使用不会乱加BOM的编辑器。Linux下的编辑器应该都没有这个问题。WINDOWS下,请勿使用记事本等编辑器。推荐的编辑器是: Editplus 2.12版本以上; EmEditor; UltraEdit(需要取消‘添加BOM’的相关选项); Dreamweaver(需要取消‘添加BOM’的相关选项); Notepad(需要进行“转换为不带BOM的UTF-8”)等。 对于已经添加了BOM的文件,要取消的话,可以用以上编辑器另存一次。(Editplus需要先另存为gb,再另存为UTF-8。)
四、js代码的影响 。在网页中一些广告引入js或者某些输出内容的js代码,可能引起网页顶部空白的问题。解决办法就是采用轮流去掉js的方法找出有问题的js代码,然后修改。
五、特殊字符的影响。 复制粘贴文本(尤其从Word粘贴)时可能有一些特殊的字符造成浏览器显示出错,例如版权符,在HTML代码里应该使用 © 来显示,如果直接在源代码粘贴这个符号,就会出问题,同样的问题还会有空格符等等。
六、脚本语言函数存在的问题 。可能是程序里哪个函数哪个类无意中输出的错误,这个错误要检查一下代码。
一、没有正确使用margin设置边距,margin指的是空白长度,用于控制容器中的内容和容器边缘的距离。
二、人为疏忽,尤其在是脚本语言的源代码里多出了一行空白,解决办法自然是删掉空白行就OK。<styletype="text/css">
body{
padding: 0px;
margin: 0px;
}
</style>
对于浏览器来说,源代码里回车符都不大会解释输出,但是偶尔也会出现源代码里的回车造成显示页面也换行的问题(linux和windows的回车符在文件编码中不同),这个问题就要注意一下代码的规范性。
三、编码问题。 类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(_0xEF _0xBB _0xBF,即BOM——Byte Order Mark)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。但对于 PHP来说,PHP在设计时就没有考虑BOM的问题,不会忽略UTF-8编码的文件开头BOM的那三个字符,会把BOM作为该文件开头正文的一部分。 由于 必须在<?或者<?php后面的代码才会作为PHP代码执行,所以将会造成在页面上输出这三个字符,显示效果就要看浏览器了,一般是一个空行 或是一个乱码。由于在html一开头有这3个字符的存在,即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部。此问题除了能使网页莫名出现一行空白外 ,由于受COOKIE送出机制的限制,在这些文件开头已经有BOM的文件中,COOKIE无法送出(因为在 COOKIE送出前PHP已经送出了文件头),所以登入和登出功能失效。一切依赖COOKIE、SESSION实现的功能全部无效。 解决办法: 在编辑、更改任何文本文件时,请务必使用不会乱加BOM的编辑器。Linux下的编辑器应该都没有这个问题。WINDOWS下,请勿使用记事本等编辑器。推荐的编辑器是: Editplus 2.12版本以上; EmEditor; UltraEdit(需要取消‘添加BOM’的相关选项); Dreamweaver(需要取消‘添加BOM’的相关选项); Notepad(需要进行“转换为不带BOM的UTF-8”)等。 对于已经添加了BOM的文件,要取消的话,可以用以上编辑器另存一次。(Editplus需要先另存为gb,再另存为UTF-8。)
四、js代码的影响 。在网页中一些广告引入js或者某些输出内容的js代码,可能引起网页顶部空白的问题。解决办法就是采用轮流去掉js的方法找出有问题的js代码,然后修改。
五、特殊字符的影响。 复制粘贴文本(尤其从Word粘贴)时可能有一些特殊的字符造成浏览器显示出错,例如版权符,在HTML代码里应该使用 © 来显示,如果直接在源代码粘贴这个符号,就会出问题,同样的问题还会有空格符等等。
六、脚本语言函数存在的问题 。可能是程序里哪个函数哪个类无意中输出的错误,这个错误要检查一下代码。
- 请问如何处理升级为香港主机后网站无法访问的问题
- 防火墙设置与云服务器80端口访问限制
- 解决远程登录服务器失败及重启后仍无法连接的问题
- 远程访问故障排除 - 解决无法登录虚拟主机和数据库的问题
- 解析与绑定完成后网站仍无法正常访问的排查步骤及解决方案
- 请问如何在ASP页面中判断客户端浏览器是否为移动设备,并进行相应的跳转?
- 输入网站后台密码时显示不对,如何解决?
- 选择合适工具,掌握静态网站模板修改方法
- 静态网站上传后如何安全有效地进行修改,确保不影响网站的正常运行?
- 请问如何修改网站图片源代码
- 网站admin密码忘记了怎么办
- 如何解决PbootCMS网站后台推送文章到百度时的“site error”错误?
- 迅睿CMS网站用户投稿如何取消验证码
- 宝塔面板提示不是安全连接或私密连接,如何解决?
- 网站提示429 Too Many Requests:用户发送了太多请求怎么办
- 易优cms搜索结果页如何统计关键词文章数量
- 网站源码安装后访问首页,页面错乱的处理方法
- pbootcms模板如何做好防护
- 重置网站后台管理员账号密码
- 升级完后网站提示500错误怎么办
- pbootcms如何设置发布内容不自动提取缩略图(1)
- 百度网址安全中心提醒您:该页面可能存在违法信息!如何处理?
- 易优cms数据表或视图不存在,请联系技术处理。
- Pbootcms留言“提交成功”的提示语修改(1)
- PBOOTCMS中新增并开启手机端模板,以便为用户提供更好的移动设备浏览体验
- imagecreatefrompng(): gd-png: libpng warning: iCCP: known incorrect sRGB profile
- 易优CMS文章内容页如何获取上一篇下一篇
- PbootCMS全站模板date时间标签/时间格式常见的8种调用方式
- pbootcms网站后台登录提示:”登录失败:数据库目录写入权限不足!“
- Nginx 启动/停止 / 首页显示 / 安装 / 卸载