为什么不使用
XML与XSLT样式表编写更多的网页?为了将内容与演示文稿分开,与CSS结合将更加强大.现在,像输出导航菜单一样,人们经常手动复制导航菜单代码从页到页或做类似的事情
<?PHP include_once('myheader.inc'); ?>
在每个页面上,这不仅对服务器有更多的需求,而且导致重复的数据传输.
当我被介绍给它时,我被告知,所有主流浏览器返回IE6支持XSLT 1.0 …实现之间有无法解决的错误?是否有其他的showstoppers或严重缺乏功能,阻止XML XSLT的传播?我最近看到的唯一的网站是XML XSLT是starcraft2.com.
这是非常冗长的
>很难跟踪(在复杂的系统中)如何/何地/为什么/何时调用模板
>由于输出必须格式良好,因此您无法使用“打开”HEAD或BODY标签的模板,然后您将担心稍后关闭其他地方.当您想要处理“BODY”中的内容时,您希望能够排列一些代码以进入HEAD,这很困难.
>按照以下方法调用,导航代码并不容易
>输出类似IE条件注释的东西与所需的所有转义非常混淆
>通过追加位来构建一个HTML字符串不起作用.这可以通过在XSL代码中逐位构建HTML字符串来克服,但是变得相当复杂.
>很难跟踪(在复杂的系统中)如何/何地/为什么/何时调用模板
>由于输出必须格式良好,因此您无法使用“打开”HEAD或BODY标签的模板,然后您将担心稍后关闭其他地方.当您想要处理“BODY”中的内容时,您希望能够排列一些代码以进入HEAD,这很困难.
>按照以下方法调用,导航代码并不容易
>输出类似IE条件注释的东西与所需的所有转义非常混淆
>通过追加位来构建一个HTML字符串不起作用.这可以通过在XSL代码中逐位构建HTML字符串来克服,但是变得相当复杂.
但是最重要的是(IMHO)它为进程提供了一个额外的层次,它不会“买”你.
例如通常你有:
DB > sql > [JAVA|PHP|ASP|Python|Ruby] > HTML
但是如果你把XML和XSL放在一起,你已经添加了(可能)难以证明的步骤
DB > sql > [JAVA|PHP|ASP|Python|Ruby] > XML > XSL > HTML
将数据以方便的dandy通用可交换XML格式进行,这是非常好的,但除非您需要,否则您所做的只是添加步骤.
现在我不应该敲XSL太多,因为我一直使用它,并且欣赏它提供的一些强大的选项.然而,任何人决定是否要使用它,请确保您在潜水之前有需要.