如何以正确的方式拆分Diazo规则?

8

我曾多次遇到这个问题,现在我想找到一个完美的解决方案:

当你有一个非常复杂的Diazo主题时,迟早你会把规则分成子集并将它们移动到单独的文件中。

我的习惯是根据应用它们的模板将它们分开。那么,选择应用哪个规则的更好的解决方案是什么?

到目前为止,我找到了这两种解决方案:

  1. 您可以拥有一个“规则”列表,其中包含识别模板的条件,然后导入正确的外部xml。这里有两个缺点,您必须希望所有条件彼此互不相交,并且“否则”选项(基本上是另一个具有所有先前条件的“规则”,在not()内),会变得非常庞大。
  2. 您可以使用xsl:choose,但似乎这个选项并不完美,因为xsl:otherwise选项并不总是被应用,而且我不确定该结构是否以第一个经过验证的xsl:when结束。

我有什么遗漏的吗?您有其他选项或者您可以选择这两个选项中的哪一个是最好的吗?

1个回答

1

这只是一个半答案。我不是diazo专家,但Thijs-Code是,并且他有很多将规则集拆分并重用diazo主题不同部分的示例,您可能需要查看。

他的github账户:

https://github.com/TH-code

示例主题:

https://github.com/TH-code/diazotheme.purecss/blob/master/diazotheme/purecss/theme/rules.xml

非常感谢你的回答 Nathan,虽然我的用例有些不同。Thijs 将页面分成了多个块,而我需要根据路径和/或其他变量包含许多完全不同的规则集。我会改进我的问题以提供更多细节。再次感谢。 - Giacomo Spettoli

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接