]>
この文書は「Alternate Style Tags」の日本語訳である。最新の文書は http://www.idpf.org/epub/altss-tags/ である。原文もしくは完全な情報は、 Alternate Style Tags を参照されたい。
この日本語訳は参考である。公式な文書ではなく、翻訳・解釈の正確性を保証していない。
2014年6月26日 Recommended Specification
以前のドラフトからの変更点の差分もまた利用できる。
この文書(いくらかの規範的な訂正を含むかもしれない)のために、正誤表(英語)を参照されたい。
Copyright © 2011 International Digital Publishing Forum™
無断複写・転載を禁止する。本作品は合衆国法典第17編の下に保護されている。変更を伴うこの著作物の複製と頒布は、International Digital Publishing Forum (IDPF) の書面による許可を得ない限り禁止されている。
EPUB は International Digital Publishing Forum の登録商標である。
このセクションは有益な情報である。
このモジュールは、microformat を使用して代替スタイルシートのタグ付するためのパターンを定義している。それは、ブラウザ UI へフックすることができる標準化されたクラスを定義するために使用できる。サンプルの使用例は、日本の電子書籍リーダーで縦横レイアウトを切り替え、自動的に高いコントラストのスタイルの選択や他のアクセシビリティの懸念を包含する。
HTML 4.0 は、link
要素を使用して、外部スタイルシートのリンクを定義する。一般的にスタイルシートは無条件にリンクされるけれども、HTML 4 はまた、読者が表示を変更するために使用できるスタイルシートの相互排他的なセットである 代替スタイルセット(alternate style sets) と名付けられたものを定義する。
今まで、ほとんどの HTML ユーザーエージェントは、意義のある方法で代替スタイルを公開しなかった。しかしながら、代替スタイルは、自分の好みやアクセシビリティの必要性にドキュメントの変更をユーザーに許可するとても簡単な方法である。
この仕様は、標準化された class 名でスタイルシートをタグ付けるためのマークアップのパターンを style tags を定義する HTML link
要素([HTML5] で導入されたが、非常に長いために多くの UA でサポートしている)の class
属性を利用する。これらのクラス名は、このようなタグ付けされたスタイルセットへの特別な UI アクセスを提供するために UA によって利用することができる。
この提案の元々の動機は、日本の電子書籍リーダーで横組と縦組を切り替えるための標準的なコントロールを提供することで、この使用方法は、補足 B, 夜間視スタイルセットタグで扱われている。
UA が一方的に製作者のスタイルシートをオフにしている場合は、この仕様は適用されないことに注意されたい。(この機能は、HTML と CSS によって要求されている。)この場合、もちろん、すべてのスタイルシートは無視される。
[CSSOM] は、指定されたスタイルシートを有効にするか無効にするかどうかを制御するための、より低レベルのコントロールを持ち、CSSOM をスクリプト化することで、ここで定義されている挙動を変更してもよい(may)。
この仕様の将来の版では、[CSSOM] でエラーの取り扱い規則やインタラクションを定義するであろう。
この文書内のキーワード、must、must not、REQUIRED、SHALL、SHALL NOT、should、should not、RECOMMENDED、may、OPTIONAL は、[RFC2119] の記述に従って解釈される。
この仕様のすべてのセクションは規定ある。但し"このセクションは有益な情報である"という参考情報状態ラベルで識別される箇所を除く。セクションと付録への参考情報状態の適用は、含まれる可能性のあるすべての子コンテンツおよびサブセクションに適用される。
この仕様のすべての例は有益な参考情報である。
このセクションは有益な情報である。
これは、専門用語を少々変更することで、HTML の宣言的な代替スタイルシートメカニズムの有益な概要である。
HTML 4 は、リンクのメカニズムでスタイルシートの二つの型、固定スタイルシート(persistent style sheet)と代替スタイルシート(alternate style sheet)、を定義する。
固定スタイルシートは、代替スタイルシートが有効かどうかに関わらず、常に有効である。固定スタイルシートは、それを取り込む link
要素または style
要素の title
属性を省略することによって指示される。
代替スタイルシートは、代替セットの一部であり、そのセットの一部を有効または無効にしてもよい(may)。代替スタイルシートは、それを取り込む link
または style
の title
属性に空でない値をセットすることで指示される。固定スタイルシートのセット(次を参照)に属しているスタイルシートを除き、代替スタイルシートは、stylesheet 値に追加する rel
属性値に alternate 値を持たねばならない(must)。
HTML は、指定された代替スタイルセットで、単一に複数の代替スタイルシートのグルーピングを許可する。同じ title
値を持つすべての代替スタイルシートは、同じスタイルセットに属する。
製作者は、代替スタイルセットが、そのコンポーネントの代替スタイルシートそれぞれの rel
属性の alternate 値を省略することで優先するかどうかを指示することができる。優先するスタイルセットが定義されていないとき、初期設定の優先するスタイルセットは、代替スタイルシートが含まれていない名前のないセットである。
初期設定では、最初の優先スタイルが読み込まれる。製作者は、[HTML401] で定義された初期設定のスタイル meta または HTTP ヘッダーでこの挙動を上書きできる。
スタイルシートは、それを取り込み、link
または style
要素の class
属性にタグ名を追加することによって認識することができる。標準のスタイルタグ(この仕様を参照する仕様で定義されたもの)でタグ付けされたスタイルシートは、スタイルタグの定義に記載されている機能を実装していることを示している。代替スタイルシートと固定スタイルシートの両方は、この方法でタグ付けしてもよい(may)。
スタイルシートは、タグ付けされたそのコンポーネントのスタイルシートのうちのいづれかで認識することができる。タグ付けされたスタイルセットは、それがスタイルタグの定義に記載された機能を提供していることを示している。
標準のタグを使用している製作者は、標準タグの同じセットでスタイルセット内のすべての代替スタイルシートにタグを付けるべきである(should)。
この仕様の将来のバージョンは、スタイルセット内のタグ付けされたスタイルシートを選択的に無効にすることを UA に許可してもよい。従って、同時に有効化もしくは無効化にする必要のあるすべての代替スタイルシートは、標準的なタグと同じセットを持たなければならない(must)。
スタイルセット内の二つのスタイルシートが相互排他的なタグで認識されるとき、両方のタグは無視される。
スタイルタグを定義した仕様は、特定のタグが、タグ付けされていないスタイルセットの初期設定であると想定されていると示してもよい(may)。
次のスタイルセットタグは、この附録で定義されている:
このスタイルセットは、主にテキストの横組の表現を提供する。このタグは、vertical と相互排他的である。
このスタイルセットは、主にテキストの縦組の表現を提供する。このタグは、horizontal と相互排他的である。
UA は、タグ付けされていないスタイルセットを horizontal もしくは vertical のどちらかと推測してもよく(may)、代わりにこのようなスタイルセットに不確定な状態を指定してもよい(may)。
> 例
次の例は、XHTML 構文を使用している。HTML 構文を使用するときは、単純にタグ内の >
前のスラッシュを削除する。
次の例では、製作者は、ドキュメントの主に横組テキスト表現のためにスタイルシートを提供する:
<link rel="stylesheet" href="horizontal.css" class="horizontal"/>
UA は、横組バージョンのみを提供されていることを認識し、もし必要なら縦組スタイルを合成するであろう。
次の例では、製作者は、ドキュメントの主に縦組テキスト表現のためにスタイルシートを提供する:
<link rel="stylesheet" href="vertical.css" class="vertical"/>
UA は、縦組バージョンのみを提供されていることを認識し、もし必要なら横組スタイルを合成するであろう。
次の例では、製作者は、ドキュメントの横組テキストと縦組テキスト表現の両方のためにスタイルシートを提供する:
<link rel="stylesheet" href="horizontal.css" class="horizontal" title="横組"/> <link rel="alternate stylesheet" href="vertical.css" class="vertical" title="縦組"/>
rel 属性の alternate 値はマークされた二つ目のスタイルセットのみなので、著者は、ユーザーの上書きがない場合に、横組スタイルセットを優先することを示し、初期設定として使用されるべきである(should)。
次の例では、製作者は、ドキュメントの横組テキストと縦組テキスト表現の両方のためにスタイルシートを提供する:
<link rel="alternate stylesheet" href="horizontal.css" class="horizontal" title="横組"/> <link rel="stylesheet" href="vertical.css" class="vertical" title="縦組"/>
rel
属性の alternate 値はマークされたひとつ目のスタイルセットのみなので、著者は、ユーザーの上書きがない場合に、縦組スタイルセットを優先することを示し、初期設定として使用されるべきである(should)。
次の例では、著者は、ドキュメントの横組テキストと縦組テキスト表現の両方のためにスタイルシートを提供する:
<link rel="stylesheet" href="horizontal.css" class="horizontal" title="横組"/> <link rel="stylesheet" href="vertical.css" class="vertical" title="縦組"/>
どちらの rel
属性も alternate 値がマークされているので、両方は製作者によって優先された表現である。横組の表現が最初に提供されているので、逆にユーザー優先権がない場合は、初期設定として使用されるであろう。
次のスタイルタグは、この附録で定義される:
このスタイルセットは、昼間に使用する(明るい背景、暗いテキスト)ために適したカラースキームを提供する。このタグは、night と相互排他的である。
このスタイルセットは、夜間に使用する(暗い背景、明るいテキスト)ために適したカラースキームを提供する。このタグは、day と相互排他的である。
> 例
次の例では、製作者は、ドキュメントの昼間と夜間視の両方のためにスタイルシートを提供する横組テキストと縦組テキスト表現の両方が利用可能だが、横組表現が優先である:
<link rel="alternate stylesheet" href="vertical.css" class="vertical" title="Vertical Day" <link rel="alternate stylesheet" href="day.css" class="day" title="Vertical Day"/> <link rel="alternate stylesheet" href="vertical.css" class="vertical" title="Vertical Night"/> <link rel="alternate stylesheet" href="night.css" class="night" title="Vertical Night"/> <link rel="stylesheet" href="horizontal.css" class="horizontal" title="Horizontal Day"/> <link rel="stylesheet" href="day.css" class="day" title="Horizontal Day"/> <link rel="stylesheet" href="horizontal.css" class="horizontal" title="Horizontal Night"/> <link rel="stylesheet" href="night.css" class="night" title="Horizontal Night"/>
優先されるスタイルセットのうち、昼間視用が最初にリストアップされ、他に優先するものがないとき初期値として読み込まれる。
同じ効果は、@inport 文を使用してより少ないリンクタグで作成することができる:
<link rel="alternate stylesheet" href="vertical-day.css" class="vertical day" title="Vertical Day"/> <link rel="alternate stylesheet" href="vertical-night.css" class="vertical night" title="Vertical Night"/> <link rel="stylesheet" href="horizontal-day.css" class="horizontal day" title="Horizontal Day"/> <link rel="stylesheet" href="horizontal-night.css" class="horizontal night" title="Horizontal Night"/>
vertical-day.css
@import "vertical.css"; @import "day.css";
vertical-night.css
@import "vertical.css"; @import "night.css";
horizontal-day.css
@import "horizontal.css"; @import "day.css";
vertical-night.css
@import "horizontal.css"; @import "night.css";
このドラフトは、W3C CSS Working Group と IDPF EPUB Working Group から生じ、Anne van Kesteren 氏の特別な提案なしには存在しないであろう。
[HTML401] HTML 4.01 Specification . 24 December 1999.
[RFC2119] Key words for use in RFCs to Indicate Requirement Levels (RFC 2119) . March 1997.
[CSSOM] CSSOM .