IE6 の iframe の水平スクロール バーの解決策

IE6 の iframe の水平スクロール バーの解決策
状況は以下のとおりです: (PS: 赤いボックスは iframe 領域を表し、灰色の四角形は上記の width:100% 要素を表します。効果を確認するには IE6 を使用する必要があります。)
灰色のボックスの高さが iframe の高さより大きい場合、垂直および水平のスクロール バーが表示されます (IE6 の場合)。

灰色のボックスの高さが iframe の高さよりも小さい場合、効果は正常です。

解決策 1: 内部ページにスタイルを追加します: html { overflow-y: scroll; }
灰色のボックスの高さが iframe の高さより大きい場合、垂直スクロール バーのみが表示され、効果は正しくなります。

灰色のボックスの高さが iframe の高さよりも小さい場合、垂直スクロール バーは引き続き表示されます (使用不可)。これは欠陥です。

解決策 2: 内部ページにスタイルを追加します: html { overflow-x: hidden; overflow-y: auto; }
灰色のボックスの高さが iframe の高さより大きい場合、垂直スクロール バーのみが表示されますが、右側のコンテンツが完全に表示されません (PS: 内部のテキストは「これは高さ 200 px の div です」)。そのため、効果が正しくありません。

灰色のボックスの高さが iframe の高さより小さい場合、スクロール バーは表示されず、効果は正しくなります。


解決策 3: 何度も試行錯誤しましたが、完璧な純粋な CSS ソリューションはまだ見つかっておらず、最も完璧な効果を追求しています。純粋な CSS では問題を解決できないため、JS を使用する必要があります。以前のテストを通じて、灰色のボックスの高さが iframe の高さよりも小さい場合は、正しい効果を得るために処理は必要なく、灰色のボックスの高さが iframe の高さよりも大きい場合は、ソリューション 1 が最適であることがわかりました。したがって、私たちの js には次のようなアイデアがあります。ブラウザが IE6 で、コンテンツの高さが iframe よりも高い場合は、ソリューション 1 のスタイルを html タグに追加します。以下は jQuery コードです (jQuery がなくても考え方は同じです)。

コードをコピー
コードは次のとおりです。

$(関数(){
if($.browser.msie&&$.browser.version=="6.0"&&$("html")[0].scrollHeight>$("html").height()) $("html").css("overflowY","scroll");
});

灰色のボックスの高さが iframe の高さより大きい場合、垂直スクロール バーのみが表示され、効果は正しくなります。
灰色のボックスの高さが iframe の高さよりも小さい場合、効果は正しくなります。
毎日幸せになることを学ぶ(:

<<:  フレームウィンドウ間の関連付けとハイパーリンクのターゲット属性の使用を実装する方法

>>:  CSSはメッセージパネルをスライドするWebコンポーネント機能を実装します

推薦する

MySQLで論理SQLを置き換える際の落とし穴を回避する方法の詳細な説明

重複キーの置換と挿入の違い置換の使用法競合がない場合、挿入と同等となり、他の列のデフォルト値が使用さ...

Linux で削除できないファイル/フォルダの解決方法

序文最近、弊社のサーバーがハッカーの攻撃を受け、一部のファイルの属性が変更されたため、ウイルスファイ...

指定された期間内のすべての日付または月を取得する MySQL ステートメント (ストアド プロシージャの設定やテーブルの追加は不要)

mysql は期間内のすべての日付または月を取得します1: mysqlは期間内のすべての月を取得し...

HTML の相対パスと絶対パスの違いの分析

HTML 初心者は、ファイルを正しく参照する方法という問題によく遭遇します。たとえば、HTML ペー...

CSS3で作成した画像スクロール効果

成果を達成する実装コードhtml <base href="https://s3-us...

Zabbix 5.0 ディスク自動検出と読み取り/書き込み監視の問題を分析する

ディスクを自動的に検出する構成キーの値注: このキー値は Linux プラットフォームでのみサポート...

Struts2 ジャンプ後に CSS と JS が無効になる問題の解決策のアイデアと実装手順

struts2 アクションの実行後にジャンプした jsp が表示されると、css が機能しません。問...

上部の固定ナビゲーションバーによって CSS アンカーの配置がブロックされる問題の解決方法

多くのウェブサイトでは、ユーザーが簡単に検索したり他のページに移動したりできるように、上部にナビゲー...

CSSスタイルの記述順序と命名規則と注意事項

書き順の重要性ブラウザのリフローを減らし、ブラウザのDOMレンダリングパフォーマンスを向上させる①:...

Sitemesh チュートリアル - ページ装飾技術の原理と応用

1. 基本概念1. Sitemeshはページ装飾技術です。 1 : フィルターを通してページアクセス...

Velocity.js はページスクロール切り替え効果を実装します

今日は、複数ページのスクロール切り替え効果を備えた Web サイトを簡単かつ効率的に開発できる、小さ...

さまざまなMySQLインデックスの使用方法の詳細な説明

1. 遅いクエリログ1.1 MySQL ログの種類ログは、データベースの操作や、ユーザーがデータベー...

Centos7 FFmpeg オーディオ/ビデオ ツールのインストールに関する簡単なドキュメント

ffmpeg は非常に強力なオーディオおよびビデオ処理ツールです。公式 Web サイトは http:...

MySQL ストアド関数(カスタム関数)の定義と使用方法の詳細な説明

ストアド関数ストアド関数とは: SQL コードの一部をカプセル化し、特定の関数を完了して、結果を返し...