选择显示字体大小

[xml] xml ,xsl,css 之乱搞

做了一小段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


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons