2011-07-26 82 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生成的基本標記中進行復制,因爲兩者並不總是匹配。 –

相關問題