[3]
:[[開始タグ]]:必須
:[[終了タグ]]:必須
:出現できる文脈:[CODE(HTMLe)[[[html]]]] の子供で [CODE(HTMLe)[[[head]]]] の後
:[[内容模型]]:[CODE(SGML)[([CODE(HTMLe)[frameset]] | [CODE(HTMLe)[[[frame]]]])+ & [CODE(HTMLe)[[[noframes]]]]?]]
:[[属性]]:
,属性名,属性値,既定値,説明,出典
,[CODE(HTMLa)[[[class]]]],,(なし),級,[HTML 4] [CODE(SGML)[%[[coreattrs]]]]
,[CODE(HTMLa)[[[cols]]]],[CODE(SGML)[%[[MultiLengths]]]],[CODE(HTML)[100%]],横分割,[HTML 4] 枠
,[CODE(HTMLa)[[[id]]]],[CODE(SGML)[[[ID]]]],(なし),固有識別子,[HTML 4] [CODE(SGML)[%[[coreattrs]]]]
,[CODE(HTMLa)[[[onload]]]],[CODE(SGML)[%[[Script]]]],(なし),読込み時,[HTML 4] 枠
,[CODE(HTMLa)[[[onunload]]]],[CODE(SGML)[%[[Script]]]],(なし),Unload 時,[HTML 4] 枠
,[CODE(HTMLa)[[[rows]]]],[CODE(SGML)[%[[MultiLengths]]]],[CODE(HTML)[100%]],縦分割,[HTML 4] 枠
,[CODE(HTMLa)[[[style]]]],[CODE(SGML)[%[[StyleSheet]]]],(なし),スタイル,[HTML 4] [CODE(SGML)[%[[coreattrs]]]]
,[CODE(HTMLa)[[[title]]]],[CODE(SGML)[%[[Text]]]],(なし),注釈的題,[HTML 4] [CODE(SGML)[%[[coreattrs]]]]
[CODE(HTMLa)[cols]] と [CODE(HTMLa)[rows]] は、
両方指定しても指定しなくても、一方だけ指定しても構いません。
[[#comment]]
** 出現できる文脈
[4] 通常 [CODE(HTMLe)[[[body]]]] 内に出現する要素は
([CODE(HTMLe)[head]] の弟の) [CODE(HTMLe)[frameset]] より前に現れてはなりません
[SRC[HTML 4 16.2]]。
といってもこれは内容模型的に当たり前のことです。
[[#comment]]
** 内容
[8] [CODE(HTMLe)[frameset]] 要素は枠の配置を定義しますが、
実際のその枠の名前や初期状態などは、 [CODE(HTMLe)[[[frame]]]]
要素を使って定義します。更に分割する際には [CODE(HTMLe)[noframes]]
を入れ子に使います。
[CODE(HTMLe)[frame]] や [CODE(HTMLe)[noframes]] は、
[CODE(HTMLa)[rows]] と [CODE(HTMLa)[cols]] によって定義した枠1つに対応します。
[[文書順]]に、1行1列, 1行2列, ..., 1行[VAR[n]]列,
2行1列, 2行2列, ..., 2行[VAR[n]] 列, ...,
[VAR[n]]行1列, [VAR[n]]行2列, ..., [VAR[n]]行[VAR[n]]列と対応します。
[SRC[HTML 4 16.2.1.1]]
[9]
また、枠に対応していない UA や枠を使わない設定の場合などのために、
[CODE(HTMLe)[[[noframes]]]] 要素で[[代替内容]]を記述しておくべきです。
[[#comment]]
** 他との関係
[7] [CODE(HTMLe)[frameset]] 文書の [CODE(HTMLe)[head]]
で [CODE(HTMLe)[[[object]]]] 要素を使って、
子フレーム間でデータを共有することができます [SRC[HTML 4 16.2.1.3]]。
>>6 の例を参照してください。
[[#comment]]
** 例
[5] 入れ子の例 [SRC[HTML 4 16.2.1.2]]
[PRE(HTML)[
]PRE]
この例では、窓全体を横3つにほぼ均等に分け、
左から2つ目をたてに2つに分けています。
[6] フレーム間データ共有の例 [SRC[HTML 4 16.2.1.3]]
[PRE(HTML)[
This is a frameset with OBJECT in the HEAD
]PRE]
利用する側の例:
[PRE(HTML)[
Bianca's page
...the beginning of the document...
...the rest of the document...
]PRE]
実際の文書では、 [SAMP(URI)[bianca.html]]
がフレーム無しで単独で読み込まれることが十二分にあり得ますから、
スクリプト内でその場合の対処を行う必要があります。
[10] フレーム集合文書の例 [SRC[HTML 4 16.1]]
[PRE(HTML)[
A simple frameset document
This frameset document contains:
]PRE]
レンダリング例:
[PRE(HTML)[
---------------------------------------
| | |
| | |
| Frame 1 | |
| | |
| | |
|---------| |
| | Frame 3 |
| | |
| | |
| | |
| Frame 2 | |
| | |
| | |
| | |
| | |
---------------------------------------
]PRE]
[[#comment]]
** メモ
[[#comment]]
* メモ