HTMLで意味的に正しい改ページを表現する方法は?

html xhtml
HTMLで意味的に正しい改ページを表現する方法は?

HTMLで本/記事を編集しています。 これらのテキストは一度印刷され、スキャンして中間のXML形式に変換してから、HTMLに(XSLTで)変換します。 これらのテキストの一部は今日の市場から消滅し、主要なライブラリでのみ利用できるため、元のドキュメントのページ番号を参照して引用できるように公開したいと考えています。 この目的のために、私の中間XML形式には改ページをマークする要素があります。 現在、私はXML→ HTML変換に取り組んでおり、HTMLでこれらの改ページを変換する方法を考えています。 デフォルトでは最終的なHTMLに表示されないはずなので(単純な|は適合しません)、必要に応じてマーカーを表示する軽量のJavaScriptでこれらのドキュメントをラップする予定です。 について考えましたデフォルトでは非表示になっています。

この問題に対するより良い、おそらく「意味的な」方法はありますか?

  5  1


ベストアンサー

改ページは非常にレイアウトの問題であり、HTMLはレイアウトを記述するように設計されていないため、言語内でこのためのセマンティックなものを見つけることはできません。

期待できる最高のものは、ある種のクラッジです。

改ページは段落の途中で発生する可能性があるため、「

要素にはインライン要素のみを含めることができ、最初からほとんどのオプションを削除できます。

私に自分自身を示唆する2つの可能性は、「と」です。 前者にはセマンティクスがありません。後者は(name属性を使用して)または(href属性を使用して)リンクされるように設計されており、元のドキュメントのページをリンクしたいと考えるかもしれません。

どの要素を使用しても、マーカーを含めずにCSSで非表示にします。 そのようなプレゼンテーションフラグは、スタイルシートに `:before`を介して追加することを検討するものです(トグルが必要なためJSでトグルできるボディクラスの子孫セレクターと組み合わせて)

あるいは、「HTML」の意味の(非常に)広い視野を取りたい場合は、http://www.w3.org/TR/xhtml2/mod-text.html#sec_9.7。[l要素](無効なXHTML 2ドラフトから)および元のドキュメントの各行をマークアップします。 クラスを追加すると、新しいページの開始位置が示されます(CSSカウンターと境界線を使用して、希望する各ページと番号を明確に示すことができます)。 残念なことに、ブラウザベンダーは、実際のセマンティックマークアップ言語の使用を拒否し、代わりにHTML 5を支持しました。

3


“を使う

ページごとに、次を含むスタイルシートを用意します。

.Page {
   page-break-after: always;
}

2


“のようにhtmlで解析/解釈されないxmlタグを使用できます。

この方法でhtmlを表示すると、タグはレンダリングされませんが、jQueryまたはその他のJavascriptライブラリを使用して、要求された場合、これらの特定のタグを標準+またはその他の視覚マークで変換します。

私はこれがセマンティックアプローチになると思います…​

0


タイトルとURLをコピーしました