曝光台 注意防骗
网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者
]]>
像通常一样,空格不会对句法结构产生实质性的影响,但是必须保证开始符(<![IGNORE)和结束符(]]>)占单独的一行,
以便阅读。
可以忽略任意声明或一组声明——元素、实体、属性甚至包括其他的IGNORE 块,但是必须忽略整个声明。IGNORE 的构造必
须完整包含从DTD 中移走的全部声明。不能仅忽略声明的某个局部(例如在不可析实体声明中的NDATA GIF)。
也可以指定包括声明的某个特定部分,也就是说不忽略的部分。INCLUDE 指示的句法结构与IGNORE 相似,但是关键词不同:
<![ INCLUDE
declarations that are included
]]>
当INCLUDE 位于IGNORE 之内的时候,INCLUDE 和声明都被忽略。当IGNORE 位于INCLUDE 内,位于IGNORE 之内的声明依然
被忽略。换一种说法就是INCLUDE 不会覆盖IGNORE。
上述给出的情形中,或许会为INCLUDE 的存在表示奇怪。简单地移走INCLUDE 块,仅留下它们的内容,没有任何DTD 会发生
改变。INCLUDE 好像完全是多余的。可是,对于无法单独使用IGNORE 的参数实体引用的情形中,同时应用IGNORE 和INCLUDE
不失为一个灵巧的方法。首先定义一个如下的参数实体引用:
<!ENTITY % fulldtd "IGNORE">
将元素包裹在下列结构中,就可将其忽略:
<![ %fulldtd;
declarations
]]>
%fulldtd;参数实体引用求出的值为IGNORE,因此声明被忽略。现在,假设对一个单词作出修改,把fulldtd 从IGNORE 改
为INCLUDE,如下所示:
<!ENTITY % fulldtd "INCLUDE">
所有的IGNORE 块立即转换为INCLUDE 块。实际上,就像是一系列开关,可以打开或者关闭声明块。
XML 实用大全
第 334 页
在本例中,仅使用了一个开关——fulldtd。可以在DTD 中的多个IGNORE/INCLUDE 块中使用这种开关。也可以拥有许多可根
据不同条件选择开或关的不同IGNORE/INCLUDE 块。
当设计其余DTD 内含的DTD 时,这种能力特别有用。通过改变参数实体开关值,最后的DTD 可以改变嵌入的DTD 行为。
XML 实用大全
第 335 页
11.5 本章小结
在本章中,学习了如何通过记号、不可析外部实体和处理指令的方法,把非XML 数据与XML 文档相结合。具体地说,学习了
下述概念:
• 记号描述非XML 数据的格式。
• 不可析外部实体为容纳非XML 文本和数据的储存单元。
• 使用ENTITY 和ENTITIES 属性可在文档中包括不可析外部实体。
• 处理指令包含不作任何改变从处理器传送到最终应用程序的说明。S
• INCLUDE 和IGNORE 块在文档进行语法分析的时候,分别指定是否处理其中包括的DTD 中的声明。
在本书的后面几个部分可以看到更多拥有DTD 的文档的例子。但是关于DTD 的最基本的句法结构和用法,在本章中已经讨论
完毕。在本书的第三部分,我们开始讨论XML 的样式语言,从下一章的级联样式单(第一级)开始。
XML 实用大全
第 336 页
第三部分 样式语言
本部分包括以下各章:
第12 章——级联样式单级别1
第13 章——级联样式单级别2
第14 章——XSL 变换
第15 章——XSL 格式化对象
第12 章 级联样式单级别1
对于将诸如粗体和Helvetica 样式应用于特定的XML 元素来说,CSS 是一种非常简单、易懂的语言。任何常用的字处理软件
都具有CSS 支持的大多数样式。例如,可选择字体、字体的粗细、字号、背景颜色、各种元素的间距、元素周围的边框等等。
但是,所有的样式信息并不在文档之内存储,而是放置在一种称之为样式单(style sheet)的独立文档中。仅仅改变样式单
就可以以多种不同方式格式化一个XML 文档。不同的样式单可用于不同的目的——打印、Web、展示和其他用途——所需要
的只是适用于指定媒体的样式,并且无需改变文档中的任何内容。
本章的主要内容如下:
• 什么是CSS?
• 如何将样式单与文档关联
• 怎样选择元素
• 继承父字体的大小
• 级联过程
• 在CSS 样式单中使用注释
• CSS 单位
• 块、内联和列表项元素
• 字体属性
• 颜色属性
• 背景属性
• 文本属性
• 框属性
12.1 什么是CSS?
级联样式单(Cascading Style Sheets,以下简称CSS)是1996 年作为把有关样式属性信息如字体和边框加到HTML 文档中的
标准方法而提出来的。但是,CSS 与XML 结合的确比与HTML 结合得更好,因为HTML 承担着CSS 标志和HTML 标志之间向后
兼容的任务。例如,要正确地支持CSS 的nowrap 属性就要求废除HTML 中非标准的但又是经常使用的NOWRAP 元素。由于XML
元素没有任何预定义的格式规定,所以不会限制何种CSS 样式只能用于何种元素。
一个CSS 样式单就是一组规则(rule)。每个规则给出此规则所适用的元素的名称,以及此规则要应用于那些元素的样式。例
如,考察清单12-1,它是一首诗的CSS 样式单。此样式单有五个规则。每个规则有一个选择符——规则所应用的元素的名
XML 实用大全
第 337 页
称——和一组适用于此元素实例的属性。第一个规则说明POEM 元素应以块的形式(Display:block)显示其内容。第二个规
则说明TITLE 元素应以16 磅(font-size:16pt)、粗体(font-weight:bold)将其内容显示在块中(Display:block)。第三
个规则说明POET 元素应通过自身显示在块中(Display:block),并且与紧随其后的下一块相距10 个像素(margin-bottom:
10px)。第四个规则与第三个相同,所不同的只是前者应用于STANZA 元素。最后,第五个规则只简单地说明VERSE 元素也是
显示在自己的块中。
清单12-1:用于诗作的CSS 样式单
POEM { display: block }
TITLE { display: block; font-size: 16pt; font-weight: bold }
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:
XML实用大全(97)