转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> Web开发 >> 正文
[xml] xml ,xsl,css 之乱搞         ★★★★

[xml] xml ,xsl,css 之乱搞

作者:闵涛 文章来源:闵涛的学习笔记 点击数:669 更新时间:2009/4/23 11:18:18

做了一小段xml.与大家交流。
三个文件。(blue.xml blue.xsl blue.css )拷到本地同一目录下。

blue.xml:
运行代码框

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

blue.xsl:
运行代码框

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

blue.css:
运行代码框

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

(以前见别人做过一个类似的电子文档。)
XML在更多的时候只是一种数据文件,利用XML我们可以使内容与样式分离
如果我们将XML文件比作结构化的原料的话。那么XSL就好像"筛子"与"模子",
筛子选取自己需要的原料,这些原料再通过模子形成最终的产品。
这个模子大致是这样:我们先设计好表现的页面,再将其中需要从XML中获取数据来填充内容的部分去掉,
然后用XSL语句从XML中筛出相关的数据来填充。

XML在展开时是一个树形结构,将树形结构中自定义标记称为节点,节点之间存在父子、兄弟关系,要访问其中的结点从根结点就要以"/"来层层进入。

怎样从XML里提取相关的数据,就要用到XSL提供的模式化查询语言。就是通过相关的模式匹配规则表达式从XML里提取数据的特定语句,即上面所说的"筛子"。

选择模式:
<xsl:for-each>、<xsl:value-of>和 <xsl:apply-templates>

匹配模式:
<xsl:template>

<xsl:template match="Replys" >
 <xsl:for-each select="Reply"  >
  <div>
   <div id="replyPerson">回复人:<xsl:value-of select="UserName"/> | <xsl:value-of select="RankName"/>|</div>
   <div><xsl:apply-templates select="Content" /></div>
   <div>发表时间:<xsl:value-of select="DateTime"/></div>
  </div>
 </xsl:for-each>
</xsl:template>

简单说下这段:

XSL模板将XSL的设计细化成一个个模板(块),最后再将这些模板(块)组合成一个完整的XSL;好比船与集装箱,我们不是将所有的货物一件件地堆起来,而是装在各自的集装箱中,然后再在船上将这些集装箱堆放起来。这种方法可以使你先从整体上考虑整个XSL的设计,然后将一些表现形式细化成不同的模块,再具体设计这些模块,最后将它们整合在一起,这样,将宏观与微观结合起来,符合人们条理化、规范化要求。

装集装箱--书写模板(块):<xsl:template>
<xsl:template match="Replys">
  match ── 确定什么样的情况下执行此模板。就是标记的名字;
其中最上层模板必须将match设为"/"。
  <xsl:template>用match属性从XML选取满足条件的节点,在真对这些特定的节点形成
一个特定输出形式的模板。

<xsl:for-each select="Reply">循环选择。
  select :确定在此上下文环境中应执行什么模板,即选取用< xsl:template >标记建立的模板(块)。
<xsl:value-of> 直接输出选择的。    
调用模板(块):<xsl:apply-templates select="Content" />
调用xsl最后一段。    
<xsl:template match="Content">
    <xsl:apply-templates />
</xsl:template>

说多了。不太礼貌。 大家新年快乐。
一些基本概念和更多参考微软的"XSL开发者指南":
www.microsoft.com/china/msdn/Archives/workshop/xmlfaq.asp

经典论坛讨论帖:
http://www.blueidea.com/bbs/NewsDetail.asp?id=2399268


[Web开发]css ul li 不换行  [Web开发]XML与HTML在语法上的主要区别详解
[网页制作]如何正确的理解CSS的float浮动属性?  [系统软件]如何让Expat支持中文XML
[VB.NET程序]vb.net 与 XML 的操作  [VB.NET程序]vb.net读写xml(2)--实现datagrid与xml的沟通(原创…
[VB.NET程序]vb.net 读写xml方法(1)  [VB.NET程序][VB.NET+XML]完成简单程序配置
[VB.NET程序]使用Visual Basic操纵XML文档  [VB.NET程序]XML 简单接口 (SAX2)用Visual Basic 实现的示例
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台