これは 1994 年ではないため、最善の方法はフレームを使用しないことです。冗談はさておき、フレームはまだ役に立つことがありますが、可能であれば避けるべきです。この理由は次のとおりです。
- まったく新しいウィンドウ オブジェクトを作成します。新しいウィンドウ オブジェクトが必要でない限り、メモリを浪費しています。
- 一部の検索エンジンは、フレーム内の URL を追跡していませんでした。これは、同じドメインの目的地には当てはまらないかもしれませんが、ページのランク付け方法を変更する可能性があります。何をしているのかを理解していない限り、インデックスを作成したいサイトにフレームを使用しないでください.
フレームを使用する必要がある場合は、フレームごとに個別の html ファイルを使用するか、iframe を使用する必要があります。ただし、iframe には上記の注意事項があります。
JavaScript を使用して div または td を動的にロードすることもできます (jQuery、prototype、mootools などが役立ちます) が、フレームよりもさらに悪い SEO の観点からは、ログインが必要なアプリ用に予約する必要があります。作業を停止します。
ポジショニングの観点からフレームセットに最も近いのはテーブルです。1 つの列の幅を指定せずに、テーブルの幅を 100% に設定すると、行属性のフレームセット "*" のように、その列が使用可能な最大スペースを占有します。ただし、JavaScript を使用しないとテーブルの高さをウィンドウの 100% に設定できないため、高さと行に対して同じことはできません。ここでは、絶対配置はテーブル以上に役立ちます。例えば
<div style="position: absolute; top: 0px; bottom: 0px; width: 100%">
<div style="height: 200px; width: 100%; background: red;">Fixed Row</div>
<div style="position: absolute; top: 200px; bottom: 0px; width: 100%; background: blue">Fluid Row</div>
</div>
それらがルート要素である場合、フレーム行のように動作します。別の要素内で作業するには、その要素に幅、高さ、およびpositioning:relativeが必要です。
前の例で、td や div などの任意の要素のスタイルで固定の高さと overflow:scroll を設定すると、フレームのようなスクロール バーが表示されます。次に、すべてのデータを 1 つのページに配置するか、別の URL のコンテンツに 100% の幅と高さの iframe を含めることができますが、前述したように、フレームセットと同じ注意事項が適用されます。