| 域名空间 下载中心 社区论坛 信息公告 MY小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
CSS与XSL简述http://www.iyit.net 日期:2006-5-24 12:05:30 来源:整理转载 点击: |
例一:在HTML中的一段代码 <H1>Car Register</H1> <H2>Make: Saab 9000 </H2> <H2>Model: 1995</H2> <H2>Owner:</H2> <p>Kalle Karlsson G?tgatan 1 11111 Stockholm </p> 这是一段典型的HTML代码。在每一个tag(标签)中都含有表现形式的信息,而关于tag之间联系和结构信息却没有了。这事实上约束了HTML的发展。 例二:在XML中的一段代码 <Car Register> <Car> <Registration Number>ABC123 </Registration Number> <Make>Saab 9000</Make> <Model>1995 </Model> <Owner> <Name>Kalle Karlsson </Name> <Address>G?tgatan 1 </Address> <Zip code>11111 </Zip code> <City>Stockholm </City> </Owner> </Car> </Car Register> 在XML文件之中tag中的信息是非常纯的。它没有表现部分。所以说有人称XML为传输知识的语言。
那么XML文件是怎样表现的呢? XML文件的所有表现信息多发放在了stylesheet(样式表)文件当中。stylesheet文件全权负责XML源文件的表现形式。所以说如果一个XML源文件对应不同的stylesheet文件它就会有不同的表现形式. 有了stylesheet文件我们可以对文件表现型始终的大小,颜色,空白作特定的规定。
在这篇文章中我们要来讨论的CSS(Cascading Style Sheets 层叠样式表)和XSL(XML Style Language 可扩展类型语言)就是两种stylesheet(样式表)语言。大家会想为什么会同时有两种语言。这不是重复了吗?其实它们是互相补充,各有特色的。CSS可以展现HTML 和XML文件,而XSL可以展现XML和Transformation(转型语言)。由此可见它们各有所长。
我们还是来看看例子吧: 例三:一段CSS代码 H1 { font-size: 12pt; font-weight: bold; color: blue; } 它规定了H1元素的字体大小,种类和颜色。当然CSS能做到的远不只这些。还有比如行距,空白大小等等。
下面我们来看一个CSS结合XML源文件的例子。 例四:一段XML源文件 <?XML:stylesheet type="text/css" href="bach.css"?> ARTICLE <HEADLINE>Fredrick the Great meets Bach</HEADLINE> <AUTHOR>Johann Nikolaus Forke</AUTHOR> <PARA> One evening, just as he was getting his <INSTRUMENT>flute</INSTRUMENT>ready and his musicians were assembled, an officer brought him a list of the strangers who had arrived. </PARA> </ARTICLE> 例五:一段XSL代码,名为bach.css INSTRUMENT {display: inline} ARTICLE, HEADLINE, AUTHOR, PARA {display: block} HEADLINE {font-size: 1.3em} AUTHOR {font-style: italic} ARTICLE, HEADLINE, AUTHOR, PARA {margin: 0.5em} CSS中头两行规定了INSTRUMENT元素是实体的,而ARTICLE, HEADLINE, AUTHOR, PARA元素是虚体的。第三至第五行规定了HEADLINE元素的字体大小,AUTHOR元素是意大利字体,ARTICLE, HEADLINE, AUTHOR, PARA元素间空白有0.5em宽 在例四第一行,XML文件指明了它的stylesheet文件的类型与位置。这样CSS结合到了XML源文件上。
但CSS与XSL相比,它有着一些不足。CSS适用于那些元素顺序不变的文件。对于那些需要经常按不同元素排序的文件,我们还是要用XSL。
XSL是怎样工作的呢? XSL处理器把XML源文件通过XSL检验后产生一个HTML表现文件。这样XML源文件就在网络浏览器上有了表现。其实最终的目标并不只是产生HTML文件,而是可以各种各样的文件,比如Txt, Rtf. XML源文件中也有类似例四中的一行, 比如是<?xml-stylesheet type="text/xsl" href="www.book.com/s1.xsl">用以指明了它的stylesheet文件的类型与位置。每一个XSL文件都包含了template rules(匹配模板规则)的集合。template rules包含有两个部分:Patterns和Actions。 Patterns用以指出这个规则适用于那一个元素,Actions指出这个元素以及它的子元素要怎样展现。这样一来XML源文件中的结构树就被转换成了一个flow objects(流程产物)树。 让我们再来看一个例子吧。 例六:一段XSL代码。 <?xml version="1.0"> <HTML xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <BODY STYLE="font-family:Arial, helvetica, sans-serif; font-size:9.5pt;background-color:#FEEEEE"> <xsl:for-each select="portfolio/stock"> <DIV STYLE="background-color:teal; color:white; padding:4px"> <SPAN STYLE="font-weight:bold; color:white"> <xsl:value-of select="name"/></SPAN> -<xsl:value-of select="price"/> </DIV> <DIV STYLE="margin-left:10px; margin-bottom:1em; font-size:9pt"> <xsl:value-of select="description"/> <SPAN STYLE="font-style:italic"> (change:<xsl:value-of select="change"/> </SPAN> </DIV> </xsl:for-each> </BODY> </HTML> 第二行是指明文件中标识的集合,又叫做Namespace(名域)。这可以使得同名标识不会冲突。 值得一体的是,文件中还用到了选择语句(for-each select)在XML树结构中进行选择。 相信大家读它不会遇到什么困难。 编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:XML文件的显示——CSS和XSL 下一篇:XML与其相关技术 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 相关文章 | ||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||