現役システムエンジニアの備忘録

技術スキルや用語などの記録を残していきます

Frame(フレーム・親子ウィンドウ)

【JavaScript入門】フレーム(frameset)が廃止された理由と現代の代替技術|SPA・コンポーネント時代のページ分割を解説

投稿日:2026年5月17日 更新日:

この記事で分かること

  • frameset が廃止された理由
  • フレームの問題点(UX・SEO・アクセシビリティ)
  • 現代の代替技術(SPA・コンポーネント・iframe
  • 実務での最適な選択方法

frameset はかつて画面分割のために使われていましたが、UX・SEO・アクセシビリティなど多くの問題から HTML5 で正式に廃止されました。
この記事では、frameset が消えていった理由と、現代の Web 開発で主流となった SPA やコンポーネント、iframe などの代替技術について分かりやすく解説します。



frameset は HTML5 で正式に廃止された

HTML4 時代には、画面を分割するために
<frameset><frame> が使われていました。

しかし HTML5 では、frameset は正式に廃止され、
現代の Web では使用しない技術 となっています。

なぜ frameset は廃止されたのか?

理由は多数ありますが、特に以下の問題が大きいです。

① URL が変わらずブックマークできない

フレーム内のページが変わっても URL が変わらないため、
ユーザーがページを保存できません。

② 戻るボタンの挙動が不自然

ブラウザの戻るボタンがフレーム内の履歴を操作しないため、
ユーザーが混乱しやすい構造でした。

③ SEO に極めて弱い

検索エンジンがフレーム構造を正しく理解できず、
検索結果に表示されない という問題がありました。

④ アクセシビリティが低い

スクリーンリーダーがフレーム構造を読み上げにくく、
アクセシビリティの観点でも問題がありました。

⑤ スマホとの相性が最悪

スマホ時代に入り、フレームは
レスポンシブデザインと完全に相性が悪い ため廃止が加速しました。



現代の代替技術①:SPA(Single Page Application)

React / Vue / Angular などのフレームワークにより、
ページ遷移を行わずに画面を切り替える SPA が主流になりました。

SPA の特徴

  • URL が変わる(ルーターで管理)
  • 戻るボタンが正しく動く
  • SEO も SSR / SSG で対応可能
  • 高速で滑らかな画面遷移

frameset が担っていた「画面分割・部分更新」の役割は
SPA が完全に置き換えました。

現代の代替技術②:Web Components(コンポーネント化)

Web Components や React/Vue のコンポーネントにより、
画面を部品化して再利用する という考え方が一般化しました。

コンポーネントの利点

  • UI を小さな部品に分割できる
  • 再利用性が高い
  • 状態管理がしやすい
  • フレームのような UX 問題がない

フレームの「画面を分割する」という目的は
コンポーネントがより安全・柔軟に実現しています。

現代の代替技術③:iframe(安全な埋め込み)

iframeframeset とは異なり、
現代でも現役の技術 です。

特に以下の用途で必須です。

  • 外部サービスの埋め込み(広告・動画・チャット)
  • サンドボックス化された安全な表示
  • postMessage による安全な通信

ただし、ページ全体のレイアウトに使うのではなく、
外部コンテンツの埋め込み専用 として使われます。

frameset → SPA / コンポーネント への進化図

技術 役割 現代での評価
frameset 画面分割・部分更新 廃止(非推奨)
iframe 外部コンテンツの埋め込み 現役(用途限定)
SPA 部分更新・高速遷移 主流
コンポーネント UI の部品化・再利用 主流

実務で frameset の代わりに何を使うべきか?

用途別に最適解は以下の通り。

  • 画面分割・部分更新 → SPA / コンポーネント
  • 外部サービスの埋め込み → iframe
  • 安全な隔離環境 → iframe + sandbox

frameset の役割は、
現代では完全に別の技術に置き換わっています。

JavaScript 初心者におすすめの学習書籍

書籍で学ぶのが向いている人

  • frameset が廃止された理由を体系的に理解したい
  • UX・SEO・アクセシビリティの観点からフレームの問題点を学びたい
  • 現代の代替技術(SPA・コンポーネント・iframe)を基礎から理解したい
  • ネット記事だけだと情報が断片的に感じる

frameset は HTML5 で正式に廃止され、
現代の Web では使われない技術となりました。
書籍では、ブラウザの仕組みや UI の歴史を順序立てて学べるため、
なぜフレームが消え、SPA やコンポーネントが主流になったのか を深く理解できます。

いちばんやさしい JavaScript の教本

図解が多く、JavaScript の基本文法やブラウザの動作を視覚的に理解できる入門書です。
フレームが抱えていた「戻るボタン問題」や「URL が変わらない問題」など、
現代の Web に必要な UX の基礎も自然に身につきます。

この本で解決できること:

  • HTML の歴史と frameset 廃止の背景が理解できる
  • 現代の Web が採用する UI/UX の考え方が分かる
  • SPA やコンポーネントの基礎を学ぶ土台ができる

確かな力が身につく JavaScript「超」入門

実務で必要な UI 操作・イベント制御・画面構造の理解を深めたい方に最適な入門書です。
frameset の問題点や、
現代の標準である SPA / コンポーネント / iframe の役割を
実践的に学べます。

この本で解決できること:

  • フレームが UX・SEO に弱い理由を体系的に理解できる
  • SPA がどのように画面分割・部分更新を実現しているか分かる
  • 現代的な UI 設計の考え方が身につく

動画で理解を深めたい方へ(Udemy講座)

frameset が廃止された背景や、
現代の Web がどのように画面構造を実現しているかは、
実際の動作を見ながら学ぶと理解が一気に深まります。

初心者のためのJavaScript 完全入門

JavaScript の基本文法からブラウザの仕組みまで体系的に学べる人気講座です。
フレームの問題点や、現代の UI がどのように進化したかを理解する基礎が身につきます。

この講座で解決できること:

  • frameset が廃止された理由を視覚的に理解できる
  • 戻るボタン問題や URL 問題など UX の基礎が分かる
  • SPA の画面遷移やコンポーネント構造を学ぶ土台ができる

初心者のためのJavaScript 完全入門(Udemy)

超JavaScript 完全ガイド 2026

実務で必要な UI 設計・画面遷移・コンポーネント化を深く理解したい方に最適な講座です。
frameset の問題点を踏まえ、
現代の Web が採用する SPA やコンポーネントの仕組みを実例で学べます。

この講座で解決できること:

  • フレーム構造が抱えていた UX / SEO の問題を理解できる
  • SPA のルーティングや部分更新の仕組みを実際の画面で確認できる
  • 現代的な UI/UX 設計をまとめて習得できる

超JavaScript 完全ガイド 2026(Udemy)

体系的に学びたい方へ(スクールという選択肢)

独学の限界を感じやすいポイント

  • frameset が廃止された理由が曖昧なままになる
  • UX・SEO・アクセシビリティの問題点を体系的に理解しづらい
  • SPA やコンポーネントの構造が複雑に感じる
  • 現代の UI 設計の最適解に自信が持てない

スクールでは、プロの講師が学習ロードマップを作成し、
frameset の問題点から
現代の SPA / コンポーネント設計まで体系的に理解できるようサポートしてくれます。

無料相談で得られるメリット

  • あなたのレベルに合わせた学習計画を作成
  • UI/UX の改善ポイントをプロが具体的にアドバイス
  • SPA やコンポーネントの理解を深める学習方法を提案
  • エンジニア転職を視野に入れたキャリア相談も可能

現代の Web 開発を体系的に学びたい方には、
DMM WEBCAMP の学習コースも選択肢のひとつです。

DMM WEBCAMP 学習コース(無料相談はこちら)



フレーム廃止と代替技術に関するよくある質問(FAQ)

Q1

frameset は今でも使えますか?

A

HTML5 で廃止されており、現代のブラウザでは非推奨です。実務では使用しません。

Q2

iframeframeset の代わりになりますか?

A

レイアウト用途には向きません。外部コンテンツの埋め込み専用として使われます。

Q3

画面分割や部分更新はどう実現すればいいですか?

A

SPA(React/Vue)やコンポーネントを使うのが現代の標準です。

Q4

外部サービスを安全に埋め込むにはどうすればいいですか?

A

iframe + sandbox + postMessage を組み合わせるのが一般的です。



まとめ

frameset は HTML5 で廃止され、
現代の Web では以下の技術が主流です。

  • SPA(React / Vue / Angular)
  • コンポーネント(Web Components / React / Vue)
  • iframe(外部コンテンツ埋め込み)

フレームの問題点(UX・SEO・アクセシビリティ)を解決しつつ、
より柔軟で高速な Web を実現するための進化と言えます。



関連記事

【JavaScript入門】window.openとopenerの使い方|親ウィンドウ・子ウィンドウの関係を初心者向けに解説

この記事で分かること window.open で新しいウィンドウを開く方法 opener を使った親ウィンドウ・子ウィンドウの関係 親ウィンドウから子ウィンドウを操作する方法 noopener などの …

【JavaScript入門】iframeのsandbox属性の使い方|権限を細かく制御して安全に埋め込む方法を初心者向けに解説

この記事で分かること sandbox 属性とは何か(iframe の権限を制限する仕組み) 各 allow-* オプションの意味と使い方 同一オリジン制限との関係 実務での安全な iframe 埋め込 …

【JavaScript入門】iframeとframesetの違いを解説|歴史・仕様・現代の使い方を初心者向けにわかりやすく紹介

この記事で分かること iframe と frameset の歴史と役割の違い frameset が廃止された理由 iframe が現代Webで主流になった背景 同一オリジン制限や実務での注意点 HTM …

【JavaScript入門】iframeの高さ・幅を動的に調整する方法|自動リサイズの実装手順を初心者向けに解説

この記事で分かること iframe の高さ・幅を動的に変更する方法 contentWindow / scrollHeight を使った自動リサイズ 別ドメイン iframe を安全にリサイズする方法( …

【JavaScript入門】frame.locationの使い方|フレームのURL(URI)を参照する方法をわかりやすく解説

この記事で分かること frame.location の基本的な役割 フレームが表示しているURL(URI)の取得方法 frames 配列との組み合わせ方 親フレーム・トップフレームからの参照方法 HT …

このブログは Xserver 上の WordPress で運用しています。
表示速度が速く、安定しているのでブログ初心者にもおすすめです。

レンタルサーバー エックスサーバー

-Frame(フレーム・親子ウィンドウ)

執筆者: