web-dev-qa-db-ja.com

htmlでフレームが非推奨になるのはなぜですか?

HTMLには初期の頃からフレームがありましたが、最新バージョンでは非推奨です。多くのブラウザ(Internet Explorerで試しました)は、フレームを適切に表示しません。

なぜこれが行われたのですか?フレームの欠点は何ですか?

59
SonOfTheEARTh

Jakob Nielsenは1996年のコラムで criticized frames と書いています。いくつかのキーポイント:

  1. フレームは、ユーザーがページを適切にブックマークできないようにします。ブックマークされたフレームセットページがロードされると、フレーム内でのユーザーの以前のマウスクリックは問題になりません。外部URLのみが保存され、ユーザーは手動で移動した場所に移動する必要があります。

  2. フレームは、Webページの印刷に課題をもたらします。すべてのフレームを一度に印刷することは、紙のさまざまな寸法に適していません(そして、ユーザーはそのように最初のページのみを取得できます)。ユーザーは通常、必要なフレームを右クリックして、適切なコンテキストメニューオプションを選択する必要があります。

  3. 検索エンジンから来ているユーザーは、別のフレームにいる場合はナビゲーション要素にアクセスできない場合があります。検索エンジンがテキストを見つけたフレームのみに誘導されます。

「フレームセット」(1990年代後半/ 2000年代前半のWebページで使用されている最も一般的なタイプ)は死にかけていますが、iframe(インラインフレームの略)は生き続けています。実際、最近のiframeは今日の「マッシュアップ」Webアプリケーションで有用であることがわかっており、現在iframeの拡張は HTML5仕様 で提案されています。

たとえば、Facebookはアプリ開発者向けのAPIで、サードパーティのアプリを自社のサイトにシームレスに統合し、セキュリティリスクを最小限に抑えます。 (このモデルでは、すべてのサードパーティコードが別のドメインに残ります。これはセキュリティ上の理由から適切です。)

57
PleaseStand

フレーム 非推奨ではありません HTML。これらは HTML 5で廃止 であり、このバージョンの前は discouraged です。これは、指定されたリンクで明確に言及されています。

10
Pascal Qyy

OPに答えるのではなく、フレームセットのバッシングのバランスをとります。

私はそれらが素晴らしいと思います、そしてあなたがあなたのメニューを無傷のままにしたいとき、何も彼らに近づきません。

  • サードパーティのページ/アプリ(phpmyadminなど)を視覚的に組み込む
  • Html以外のdoctype(pdfまたは画像)を表示します。
  • width = "x、*"のおかげで、単純な「レスポンシブ」な振る舞いが得られます。

また、メインコンテンツを取得しながら、スムーズなメニューアニメーションを提供できます。

感覚的に使用すると、彼らは超です。

4
Teson