如何在ZPT中使用HTML5 Boilerplate?

时间:2013-06-13 18:30:30

标签: html5boilerplate template-tal zpt template-metal

我正在尝试更新一个较旧的基于ZPT的应用程序,并且我希望实现以下HTML5 Boilerplate最佳实践,以便将条件IE类添加到<html>

<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->

由于我在许多非ZPT网站上使用过这种技术,所以我没有想太多,但是当我去实现它时,我遇到了一些问题。

  1. ZPT删除HTML注释,以使呈现的源缺少条件注释
  2. 我们使用整页宏来定义可重用的页面模板,该定义发生在<html>元素中,如<html metal:define-macro="page">。即使我得到条件注释显示,似乎我的下一个障碍是正确定义页面宏。
  3. 任何人都可以对这两个问题有所了解吗?

1 个答案:

答案 0 :(得分:0)

这是异化,zpt不会删除评论。也许这是zpt的特定实现呢?你还试过使用tal:replace =“strucutre string:....”

<metal:macro metal:define-macro="page">
<tal:doctype tal:replace="structure string:&lt;!DOCTYPE html&quot;&gt;" />
<!-- If the comments are eaten, you can generate them using the same trick that
     tal:doctype above -->

</metal:macro>