<frameset>: FRAMESET 要素
最終更新:2026-10-13
<frameset>FRAMESET 要素
ブラウザーウィンドウを rows/cols で複数のサブウィンドウ(frame)に分割します。HTML5 で非推奨となりました。<iframe> や現代の CSS レイアウトを優先します。
| カテゴリ | ドキュメント構造 |
|---|---|
| コンテンツモデル | フローコンテンツ |
| 許可される親要素 | フローコンテンツを受け入れる要素 |
| 閉じタグ | 必要 </frameset> タグ |
| ステータス | 廃止 |
📝 構文
<frameset cols="25%,75%">
<frame src="nav.html">
<frame src="content.html">
</frameset>
⚙️ 属性
この要素はグローバル属性に加え、以下の属性をサポートします:
| 属性 | 値 | 説明 |
|---|---|---|
rows | Row heights as pixels, % or *. | |
cols | Column widths as pixels, % or *. | |
border | Border width between frames, in pixels. |
▶ サンプル
下のコードを編集して、playground でリアルタイム結果を確認:
🌐 ブラウザサポート
| ブラウザ | |||||
|---|---|---|---|---|---|
| <frameset> | ✓ v1 | ✓ v12 | ✓ v1 | ✓ v1 | ✓ v1 |
| すべての主要ブラウザでサポート | |||||
ヒント: frameset は廃止予定で SEO やモバイルに不向きです。<iframe> や CSS Grid/Flex を使いましょう。
❓ よくある質問
Qframeset とは何ですか?なぜ廃止されたのですか?
A
<frameset> は rows/cols 属性でウィンドウを複数の <frame> に分割し、各フレームが独立した文書を読み込む仕組みです。廃止の理由は、URL と履歴の対応が壊れる、アクセシビリティが最悪、検索エンジンのクロールが混乱する、レスポンシブにできない、の4点です。HTML5 では削除されました。Qframeset のページを現代のブラウザで開くとどうなりますか?
A現代のブラウザは frameset を解析はします(後方互換)が、フレームのレイアウトとしては描画しません。内容の一部だけが表示されるか、空白になります。frameset に依存した旧システムは、新しいブラウザで必ず問題を起こすので、移行が必須です。
Qframeset の rows と cols はどう書くものでしたか?
A歴史的な書き方では、
<frameset rows='80,*,100'> は「上 80px、中央は残りすべて、下 100px」の3行レイアウトを意味し、アスタリスクが余白を表します。旧コードを読むときの知識としてだけ役立て、新しいレイアウトでは CSS Grid の grid-template-rows で同じ効果を実現してください。🏷️ 関連タグ
💡 関連ケース
今後さらにケーススタディを追加予定です。