2修改Blogger模板?文本区域标签 <![CDATA[...]]> 及其与转义字符的关系,Blogger建网站(2)

接着上一篇讲解

修改网站要记录修改的地方及其功能,比如说:我的第一个修改就是要把主菜单模块合并到标题栏内,一方面看上去很充实,更重要的是把更多位置用来显示我发布的内容。修改模板是进入到主题背景,点自定义右边的倒三角符号,点 “修改HTML” 就进入到编辑XML界面了。



两个不起眼的重要语句

这里先介绍一个语句:<div class='clearfix'/>,他真正内容在这里: .clearfix{clear:both} 它的功能是使元素位于文档中它前面的任何浮动元素float:left,float:right的下方;您还可以使用使其仅低于那些向左float:left或向右float:right浮动的元素。clear:left;clear:right

None

模板文件的第一句代码“<?xml version="1.0" encoding="UTF-8"?>”是xml声明。version 是版本的意思, encoding 是字符编码,这种字符编码,中文才不会是乱码,而且这个<?xml 要连在一起写,否则会有报错

None

html 标签格式:

  • 单标签: <标签名 />  例如:<br /> 换行 <hr/>水平线 
  • 双标签: <标签名>封装的数据</标签名> 
  • 标签名大小写不敏感 
  • 标签有属性:基本属性和事件属性 
  • 标签要闭合(不闭合 ,html 中不报错。但我们要养成良好的书写习惯。闭合)


文本区域 <![CDATA[...]]>

  • <![CDATA[...]]>的功能: 告诉 xml 解析器,CDATA 里的文本内容,只是纯文本,不需要 xml 语法解析。
  • <![CDATA[...]]>的格式: <![CDATA[ 这里可以把你输入的字符原样显示,不会解析 xml ]]>
  • <![CDATA[ 和 ]]>必须成对出现
  • <![CDATA[...]]>不能嵌套使用


None

我们知道,在xml中,”<”、”>”、”&”等字符是不能直接存入的,否则xml语法检查时会报错,如果想在xml中使用这些符号,必须将其转义为实体,如”&lt;”、”&gt;”、”&amp;”这样才能保存进xml文档。在使用程序读取的时候,解析器会自动将这些实体转换回”<”、”>”、”&”。

值得注意的是:

  • (1) 转义序列字符之间不能有空格;
  • (2) 转义序列必须以”;”结束;
  • (3) 单独出现的”&”不会被认为是转义的开始;
  • (4) 区分大小写。


None

在XML中,需要转义的字符有:

  • (1)&   &amp;
  • (2)<   &lt;
  • (3)>   &gt;
  • (4)"   &quot;
  • (5)'   &apos;


** 但是严格来说,在XML中只有”<”和”&”是非法的,其它三个都是可以合法存在的,但是,把它们都进行转义是一个好的习惯。 **



None

<![CDATA[...]]>和xml转义字符的关系

它们两个看起来是不是感觉功能重复了?是的,它们的功能就是一样的,只是应用场景和需求有些不同:

  • (1) <![CDATA[...]]>不能适用所有情况,转义字符可以;
  • (2) 对于短字符串<![CDATA[...]]>写起来啰嗦,对于长字符串转义字符写起来可读性差;
  • (3) <![CDATA[...]]> 表示 xml 解析器忽略解析,所以更快。
None

综合考虑:如果文本包含了很多的 "<" 字符 <= 和 "&" 字符——就象程序代码一样,那么最好把他们都放到 <![CDATA[...]]> 中。但是有个问题那就是类似于 <if test="">   </if>  <where>   </where> 或者 <choose>   </choose> 或者 <trim>  </trim> 等这些标签都不会被解析,所以我们只把有特殊字符的语句放在 <![CDATA[...]]> 中,尽量缩小 <![CDATA[...]]> 的范围。

None

None None

油管频道👉 https://bit.ly/2XNfakc 看最新视频,白嫖最新节点!

请朋友们优先使用订阅,特别是手机用户,更方便更快捷!




发表评论

0 评论