framesetとは?初心者でもわかるHTMLの歴史と使い方ガイド共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
framesetとは?初心者でもわかるHTMLの歴史と使い方ガイド共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


framesetとは?

framesetは、かつてHTMLでページを分割して表示するために使われた要素です。現在の標準HTML5では非推奨となっており、代わりにCSSを使ったレイアウトや、必要に応じてiframeのような埋め込み技術を使います。

この「frameset」要素を使うと、ページ全体を複数の窓(フレーム)に分割し、それぞれ別のHTMLドキュメントを読み込ませることができました。左にナビゲーション、右にコンテンツのような配置を作ることが多く、古いウェブサイトの中には今でも残っているものがあります。

framesetの基本と仕組み

framesetはHTMLの本文を表す body の代わりに、フレームを区切るための 要素を使います。 の内部には 要素を並べて、表示領域を分割します。例えば、左右に分割する場合は cols='25%,75%' のように列幅を指定します(この例では左25%、右75%の分割になります)。

の中には複数の が入り、それぞれ src 属性で読み込むHTMLを指定します。結果として、ユーザーの画面には2つ以上の窓が並び、それぞれ別のドキュメントが同時に表示されます。

この仕組みは分かりやすい反面、ページ全体の構造を一枚のツリーとして把握しづらく、検索エンジンのクロールにも不利になることが多い点が問題でした。

framesetと現在の技術の違い

現代のウェブ開発では、CSSのFlexboxやGridを使って同じようなレイアウトを実現するのが主流です。これにより、1つのHTMLドキュメント内で複数の領域を作りつつ、表示される内容を動的に変更できます。また、スクリーンリーダーなどのアクセシビリティの観点でも与える情報を統一しやすくなります。

フレーム構造は、特定の領域だけを更新したい場合にも不便でした。現在のウェブでは、JavaScriptやサーバーサイドのテンプレートを使って部分的な更新を実現する方法が一般的です。

さらに、検索エンジンのクローラは frameset の内部構造を正しく解釈しづらい場合があり、SEOの観点でも避けるべきとされます。

代替案と実践的なポイント

代替としては、以下の方法が広く使われています。

・CSSを使ったレイアウト(Flexbox・Grid)で同様の分割を作る

・必要に応じて小さな埋め込みにはiframeを使う場合もありますが、iframeはセキュリティやSEOの観点で注意が必要です。

実際に取り入れる場合は、アクセシビリティの配慮と、レスポンシブデザインを意識して、画面サイズに応じてレイアウトが崩れないように設計しましょう。

簡単な比較表

項目framesetの特徴現代的代替
構造ページを複数の領域に分割1つのHTMLをCSSで分割して表示
SEOとアクセシビリティクローラに不利になることが多い標準的なHTML構造と代替テキストで改善

結論として、framesetは古い技術として位置づけられており、現在のウェブ開発では避けるべきものです。新しいウェブページを作るときには、CSSと最新のHTML要素を使って柔軟でアクセシブルなデザインを心がけましょう。今後の学習では、フレームを使わなくても目的を達成できるさまざまな手法を身につけると良いでしょう。


framesetの同意語

frameset要素
HTMLの frameset 要素は、ブラウザウィンドウを複数のフレームに分割するための要素。HTML5で非推奨。
フレームセット
frameset の日本語表現。複数のフレームを配置するレイアウトのこと。
framesetタグ
frameset 要素を指す別称。HTMLのタグ名を表す表現。
フレームレイアウト
複数のフレームを使ったレイアウト手法の総称。現代の実装では CSS でのレイアウトへ置換されることが多い。
HTMLフレーム構造
HTML文内でのフレーム分割構造のこと。
フレーム分割構造
画面を縦横に分割して複数のフレームを配置するレイアウトの概念。
フレームセット構成
フレームを組み合わせた構造・配置のこと。

framesetの対義語・反対語

フレームレス
フレームを使用せず、ウィンドウを複数の枠に分割して表示する従来の frameset の構造を避けたデザイン。1つの表示領域で完結するページ設計を指す。
フレームなしのページ
framesetを使わず、1つのHTMLドキュメントで全体を表示する構造。複数のフレームによる分割表示を前提としない設計。
単一ページ表示
1つのHTMLドキュメントだけで全情報を表示する表示形式。複数のフレームを使わず、スクロールで完結することが多い。
ワンページサイト
サイト全体を1ページで完結させ、ナビゲーションも同一ページ内で実行する設計のウェブサイト。
シングルページアプリケーション(SPA)
クライアント側で動的にコンテンツを切り替え、実質的に1つのページ上で表示を更新する設計。
レスポンシブデザイン
デバイスの画面サイズに応じてレイアウトを柔軟に変える設計。frameset の分割表示に頼らず、現代的な表示を実現する考え方。

framesetの共起語

frameset
HTMLの古いレイアウト機能。複数の文書を同時に表示する領域を作る要素で、HTML4/XHTML時代に使われたがHTML5で非推奨
framesetタグ
framesetを定義するタグ。rows属性や cols属性で領域を分割して、複数の文書を同時に表示する構造を作る。
frame
frameset内で使われる々のフレームを表す要素。表示する文書を分割された領域に割り当てる役割。現在は非推奨。
frames
frameset内のframe要素の集合。古いレイアウト手法の一部で、現代のHTMLでは使わない。
iframe
別のHTML文書を現在のページ内に埋め込む要素。framesetの代替として広く使われ、独立した文書空間を持つ。
noframes
framesetが表示できない場合に代替コンテンツを提供する要素。
frameborder
フレームの境界線の表示を制御する古い属性:1/0または yes/no の指定をする。HTML5では非推奨。
border
フレーム間の境界線の表示を設定する属性。古いHTML仕様で使われた。
framespacing
frameset内のフレーム間の間隔を設定する属性。
marginwidth
各フレームの左右の余白(マージン)幅を指定する属性。
marginheight
各フレームの上下の余白(マージン)幅を指定する属性。
rows
framesetで縦方向の分割を定義する属性。例: rows='50%,*'。
cols
framesetで横方向の分割を定義する属性。例: cols='*,200'。
src
表示する外部HTML文書のURLを指す属性。frame/iframe共通。
name
フレームに名前を付け、別ページからターゲットとして参照するための属性。
scrolling
フレーム内のスクロール挙動を制御する属性(auto/yes/noなど)。
noresize
フレームのリサイズを禁止する属性。
srcdoc
iframeの属性で、直接文書を埋め込む場合に使う。framesetとは直接関係薄いが併用されることがある。
deprecated
framesetと関連要素はHTML5で非推奨とされている概念。
legacy
レガシー技術として扱われることが多い。
HTML5
現在のHTML標準。framesetは推奨されず非推奨。
XHTML
XML準拠のHTML。framesetを扱うケースもあるが、現代の実装はHTML5に準拠するべき。
W3C
標準化団体。framesetの仕様はHTML4/XHTMLの時代の名残として扱われることがある。
アクセシビリティ
Framesetはスクリーンリーダーなどの支援技術での読み上げ・ナビゲーションを難しくすることがあり、アクセシビリティの観点から推奨されない。
SEO
検索エンジンのクローリングやインデックスの挙動に影響する可能性がある。
ブラウザ互換性
古い実装はブラウザ間差異が生じやすく、最新のブラウザでも非推奨扱いのことが多い。
マルチドキュメントレイアウト
複数のHTML文書を同時に表示するレイアウト手法の総称。
レイアウト
ページの構造を分割する古いレイアウト手法の一つ。
CSS
現代のレイアウトはCSSで組むのが主流。framesetは非推奨であり、CSSによる代替を推奨される。

framesetの関連用語

frameset
HTML4でページを複数の枠に分割するための要素。colsやrows属性でレイアウトを定義し、各枠にframe要素を配置して別々のHTMLを読み込む。HTML5では非推奨・廃止。
frame
frameset内の各枠を表す要素。srcで読み込むページを指定し、nameで枠に名前を付け、scrollingやnoresizeで挙動を調整する(現在は非推奨)。
iframe
ページ内に別のHTMLを埋め込む要素。独立した窓のように動作し、sandbox属性などでセキュリティを強化できる。framesetとは別の概念で、現代の主流の埋め込み手段。
frames
framesという語はframe要素の集合を指す古い概念。現代のHTMLではframesetとframeを使わず、iframeを使うケースが多い。
noframes
framesetをサポートしないブラウザ向けに代替コンテンツを提供するnoframes用の要素。
cols
frameset内で横方向の列の幅を分割する設定。例: cols='25%,*' 左が25%、右が残り。
rows
frameset内で縦方向の行の高さを分割する設定。例: rows='100,*' 上が100px、下が残り。
src
frameやiframeに読み込ませるHTMLのURLを指定する属性。
name
フレームに名前を付け、リンクやフォームのtarget属性でその枠へ表示させる際に使う。
target
リンクやフォームの結果を、特定のフレームやウィンドウに表示する指定。例: _self, _blank, フレーム名。
frameborder
枠の境界線を表示するかを指定する属性(HTML5では非推奨、CSSで制御するのが推奨)。
scrolling
フレーム内のスクロールバーの表示を制御する属性(yes/no/auto、HTML5では非推奨)。
noresize
ユーザーがフレームのサイズを変更できないようにする属性(主に旧仕様、現代では使われない)。
longdesc
フレームの長い説明のURLを示す属性(現在は非推奨)。
framespacing
フレーム間のスペースを指定する属性(非推奨)。
HTML5
HTML5ではframeset・frame要素はほぼ廃止。モダンなレイアウトへ移行することが推奨される。
deprecated
frameset・frame・framesはHTML5で非推奨(deprecated)となっており、新規開発では使わないようにする。
accessibility
フレームはスクリーンリーダーやキーボード操作の障害になりやすく、アクセシビリティの観点から避けるべき。
seo
SEOの観点では、フレーム構造は各フレームのURLが別ページ扱いになることがあり、インデックスやリンク評価が分散する場合がある。
indexing
検索エンジンがフレーム内のコンテンツを適切にクロール・インデックスできないことがあり、重要な情報が検索結果に反映されにくい。
security
X-Frame-OptionsやContent-Security-Policyのframe-ancestorsなどのヘッダで、外部サイトからの埋め込みを制御してクリックジャッキングを防ぐ。
x-frame-options
X-Frame-Optionsは外部サイトからのフレーム埋め込みを制限するHTTPヘッダー。
frame-ancestors
Content-Security-Policyのframe-ancestorsで、どのサイトがこのページをフレームとして表示できるかを制御する。
modern-alternatives
代替案として、CSSのグリッド/Flexboxでのレイアウト、iframeは必要最小限に、共通パーツはサーバーサイドで組み合わせるなど。
responsive-design
レスポンシブデザインを取り入え、画面サイズに応じてレイアウトを変える。フレームを使わず実装するのが一般的
same-origin
同一オリジンポリシーに従い、同じ-origin同士の内容のやりとりを前提に設計する。
cross-origin
異なるオリジン間での iframe の内容や通信には制限があり、必要に応じてpostMessageなどの方法を使う。
sandbox
iframeのsandbox属性で、スクリプト実行の許可やフォーム送信の制限などを設定して、高度なセキュリティを確保する。

framesetのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
16560viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2941viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1193viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1180viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
1052viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
1043viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
1030viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
984viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
874viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
872viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
816viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
815viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
809viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
743viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
722viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
698viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
627viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
613viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
604viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
547viws

新着記事

インターネット・コンピュータの関連記事