3

これは存在しないと思いますが、CSSのアドオンとしてこのようなことをした人はいないでしょうか。

連邦規則集(CFR)を含むXMLドキュメントがあり、ドキュメント自体は編集できない(スタイルシートを使用して表示するだけです)、サブパートがあるとします。これには複数のルールが含まれており、XMLドキュメントはおおよそ次のとおりです。

<subpart>
<ruleNo>63.400</ruleNo>
<ruleTitle>Definitions</ruleTitle>
<ruleNo>63.410</ruleNo>
<ruleTitle>Applicability</ruleTitle>
...
</subpart>

次に、サブパートのコンテンツをテーブルに配置するスタイルシートを作成します。左側の列にルール番号、右側の列にルールのタイトルがあります。隣接するノードを選択し、それらが単一のノードに対応しているかのように選択し、その架空のノードのルールを作成する方法があれば、タスクははるかに簡単になりruleNoますruleTitle

たとえば、中括弧内の部分をノードとして一時的に定義するノード定義ファンクターが存在する可能性があります。=>たとえば、の子でRule => subpart > {ruleNo + ruleTitle}ある兄弟のペアの親となる一時ノードを作成します。ruleNo + ruleTitlesubpart

4

1 に答える 1

4

CSS はドキュメント ツリーの操作をサポートしておらず、説明した方法で要素ノードをグループ化する機能も提供していません。さらに、CSS2.1 テーブル モデルは、すべてのペアを個別の行としてフォーマットできるようなスタイルを適用する方法を提供しませんruleNo + ruleTitle。一方、CSS には、祖先または子孫として作成できる匿名ボックスの概念があり、これはテーブル モデルではruleNo + ruleTitle、一度にセルのペアの親行として機能する単一の匿名ボックスの生成はサポートされていません。

Sass や LESS などのプリプロセッサ言語は、とにかく CSS にコンパイルされるため、無関係です。そのため、CSS で実行できない場合は、プリプロセッサでも実行できません。

現在の XML を考えると、CSS を使用して、各行ruleNoに aruleTitle要素と要素を含むテーブルにフォーマットすることはできません。代わりに、XSLT を使用して、対応する行を含む XHTML テーブルに変換することをお勧めします。

于 2013-03-10T17:53:09.803 に答える