zoukankan      html  css  js  c++  java
  • UTF-8 BOM编码格式文件对SSI的影响

      最近在用SSI(Server Side Includes)加载子模块的时候发现一个奇怪的现象,加载完成后的网页老是CSS有问题,被加载模块渲染后老是有空白部分。下面给出简单的示例。

      文件a.html的内容如下:

     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <style>
     5             *{
     6                 margin: 0;
     7                 padding: 0;
     8             }
     9             #ah{
    10                 border: solid 2px red;
    11             }
    12             #bh{
    13                 border: solid 2px black;
    14             }
    15         </style>
    16     </head>
    17     <body>
    18         <h1 id="ah">AH</h1>
    19         <!--#include file="b.html"-->
    20     </body>
    21 </html>

    被包含的文件b.html内容如下:

     1 <h1 id="bh">BH</h1> 

    最后在IIS上发布,得到的结果如下图:

      AH和BH中间有空白行,百思不得其解,甚至开始怀疑自己的CSS水平,更甚开始怀疑自己的人生。。。

      最后用Notepad++打开,看了下编码,震惊了:

      瞬间领悟了,把其保存为无BOM的UTF-8格式,再次访问页面的效果如下:

      终于显示正常了,万恶的BOM(Byte Order Mark),万恶的记事本,还在用记事本写程序的高手们,换个文本编辑器吧:)

     

     

  • 相关阅读:
    Objective-c Category(类别)
    协议(porotocol)
    类的通用格式
    objective-c 强大的布尔类型
    C 语言函数指针
    c while 循环
    jQuery的deferred对象详解
    exploring the http Object
    div+css定位position详解
    如何给变量取个简短且无歧义的名字
  • 原文地址:https://www.cnblogs.com/oneday/p/4309567.html
Copyright © 2011-2022 走看看