2011-07-26 86 views
4

我正在尝试使用plone.app.theming 1.0b8从Plone网站制作一个HTML5/CSS3主题。它在BODY部分像一个魅力一样工作。但是HTML标签和HEAD部分更加困难。至少对我来说:)是否可以在Diazo中删除base和Content-Type +改变HTML属性?

我曾尝试:

  • 删除的xmlns和xml:郎在HTML标签的属性
<drop attributes="xmlns xml:lang" theme="/html/" />
  • 删除基础标签
<drop theme="/html/head/base/" />
  • 除去其中http-当量=“Content-Type的”
<drop theme="/html/head/meta[@http-equiv='Content-Type']" />

我想知道如果plone.app.theming或重氮迫使这些东西到输出,或者如果它是我的XPath元标签,该标签是越野车?我搜查了四周,但没有找到答案。

BR

+0

是否有一个特定的原因,通过重氮操纵主题的HTML模板,而不是直接编辑其源代码? –

+2

许多人更喜欢避免编辑html模板,并且在某些情况下它根本不可能(即当通过网络获取html模板时) – aclark

回答

3

你的XPath可能不应该与末尾的“/”结束了,但我不认为这是这里的问题。

不可能删除XMLSerializer以XHTML模式(至少在常见情况下)添加的xmlns属性。您可以在根规则标记内设置HTML序列号,而不是<xsl:output method="html"/>

在XHTML模式下,XMLSerializer将添加一个xml:lang以匹配lang属性。再次尝试设置html序列化。

通常情况下,基本标记会从内容复制到主题中 - 应该没有理由在主题html文件中包含基本标记。如果您不复制它,它不会在输出中结束。不过,建议在Zope的输出中始终包含一个基本标记,因为在http://localhost/some_urlhttp://localhost/some_url/上都会呈现相同的页面,这将导致与任何相关URL的差异。

内容类型标头是由libxslt添加的,无条件地由libxslt添加并且不可能被压制。

+0

感谢您的回答。 xsl:输出删除了xmlns和xml:lang。关于基本标签,我想它和内容类型的标头是一样的 - 这是不可能的。 –

+0

啊,是的,这是一个Zope的'功能' - 它会自动添加一个基本标签到HTML页面没有一个。最好在Plone生成的基本标记中进行复制,因为两者并不总是匹配。 –

相关问题