overflow:hidden の役割の詳細な説明 (オーバーフローの非表示、フロートのクリア、マージンの崩壊の解決)

overflow:hidden の役割の詳細な説明 (オーバーフローの非表示、フロートのクリア、マージンの崩壊の解決)

1. オーバーフロー:非表示 オーバーフロー非表示

要素に overflow:hidden が設定されている場合、要素の内容が指定された幅と高さの属性を超えると、余分な部分は非表示になり、スペースを占有しません。

/*css スタイル*/
<スタイル タイプ="text/css">
    div{ 幅: 150px; 高さ: 60px; 背景: スカイブルー;
	 overflow: hidden; /*オーバーフローは非表示*/
       }
</スタイル>
 
/*html*/
<div スタイル="">
    今日はとても良い天気ですね! <br>今日はとても良い天気ですね! <br>
    今日はとても良い天気ですね! <br>今日はとても良い天気ですね! <br>
</div>

効果は以下のとおりです。

通常、ページ上では、オーバーフロー後に省略記号が表示されます。たとえば、テキストの行が固定幅を超えると、超過した内容は非表示になり、省略記号が表示されます。

/* 1行テキストのみ */
div{ 
    幅: 150ピクセル;
    背景: スカイブルー;
    overflow: hidden; /*オーバーフローは非表示*/
    white-space: nowrap; /*テキストが折り返されないことを指定します*/
    text-overflow: ellipsis; /*テキストがオブジェクト内でオーバーフローすると、省略記号 (...) が表示されます*/
}

効果は以下のとおりです。

2. overflow:hiddenはフローティングをクリアします

一般的に、親要素の高さが設定されていない場合、コンテンツの増加に応じて高さが適応されます。親要素内のすべての子要素をフロートに設定すると、子要素は標準フローから分離され、場所を占有しません。親要素は子要素の高さを検出できず、親要素の高さは 0 になります。質問は次のようになります:

/*css スタイル*/
<スタイル タイプ="text/css">
    .box{ 背景: スカイブルー; }
    .kid{ 幅: 100px; 高さ: 100px; フロート: 左;}
    .kid1{ 背景: 黄色; }
    .kid2{ 背景: オレンジ; }
    .wrap{ 幅: 300px; 高さ: 150px; 背景: 青; 色: 白; }
</スタイル>
 
/*html*/
<本文>
    <div class="box">
        <div class="kid kid1">子要素 1</div>
	<div class="kid kid2">子要素 2</div>
    </div>
    <div class="wrap">その他の部分</div>
</本文> 

上記のように、親要素には高さがないため、下の要素が押し上げられ、ページが折りたたまれます。したがって、親の高さが子コンテナとそのコンテンツの高さに適応するように、親に overflow:hidden 属性を追加する必要があります。次のように:

IE の下位バージョンでは overflow:hidden; はこの効果を実現できないため、zoom:1; を追加する必要があります。

したがって、互換性を高めるために、float をクリアするために overflow:hidden を使用する必要がある場合は、zoom:1; を追加するのが最適です。

/*css スタイル*/
<スタイル タイプ="text/css">
    .box{ 背景:スカイブルー; 
	  overflow: hidden; /*フローティングをクリア*/
	  ズーム:1;
        }
    .kid{ 幅: 100px; 高さ: 100px; フロート: 左;}
    .kid1{ 背景: 黄色; }
    .kid2{ 背景: オレンジ; }
    .wrap{ 幅: 300px; 高さ: 150px; 背景: 青; 色: 白; }
</スタイル>
 
/*html*/
<本文>
    <div class="box">
        <div class="kid kid1">子要素 1</div>
	<div class="kid kid2">子要素 2</div>
    </div>
    <div class="wrap">その他の部分</div>
</本文> 

3. overflow:hiddenはマージンの崩壊を解決する

親要素内には子要素があります。子要素に margin-top スタイルを追加すると、親要素も追従し、次のように外側の余白が折りたたまれます。

/*css スタイル*/
<スタイル タイプ="text/css">
    .box{ 背景: 空色;}
    .kid{ 幅: 100px; 高さ: 100px; 背景: 黄色; 上余白: 20px}
</スタイル>
 
/*html*/
<本文>
    <div class="box">
	<div class="kid">子要素 1</div>
    </div>
</本文> 

したがって、親要素に overflow:hidden を追加すると、この問題を解決できます。

/*css スタイル*/
<スタイル タイプ="text/css">
    .box{ 背景:スカイブルー;
          overflow: hidden; /*マージンの崩壊を解決する*/   
        }
    .kid{ 幅: 100px; 高さ: 100px; 背景: 黄色; 上余白: 20px}
</スタイル>
 
/*html*/
<本文>
    <div class="box">
	<div class="kid">子要素 1</div>
    </div>
</本文> 

以上で、overflow:hiddenの役割(オーバーフローの非表示、フロートのクリア、マージン崩れの解決)の詳しい説明は終了です。overflow:hiddenの役割についてさらに詳しく知りたい方は、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

<<:  html+vue+element-ui のスムーズさを 1 分で体験

>>:  HTML で入力ボックスに純粋な数字のみを入力するように制限する方法

推薦する

CSSを使用してアダプティブスクエアを実装する方法の例

伝統的な方法は、正方形を固定形式で書くことです。長さ=幅を直接書き、次のように固定値を書きます。 。...

シンプルなjQuery + CSSを使用してカスタムタグタイトルツールチップを作成します

導入シンプルな jQuery + CSS を使用して、ブラウザのデフォルトの動作を置き換えるカスタム...

2つのNode.jsプロセスがどのように通信するかの詳細な説明

目次序文異なるコンピュータ上の 2 つの Node.js プロセス間の通信TCPソケットの使用HTT...

初心者向けの一般的な Linux システムコマンドの完全なリスト

Linux コマンドの学習は、ほとんどの初心者にとって最大の障害です。今日は、Linux システムで...

ウェブデザインの初心者に役立つ学習教材をいくつかお勧めします

勉強中に読んだ本についてもよく聞かれます。以下は初心者におすすめの本です(私が勉強中に読んだ本です。...

WindowsでMysql5.7.17のインストールと起動に失敗する問題を解決する

マシンに初めて MySQL をインストールします。オペレーティングシステムはwin7ですmysqlの...

Element-ui NavMenuサブメニューを使用して再帰的に生成する場合のエラーの詳細な説明

ナビゲーションバーのサブメニューを再帰的に生成すると、メニューは正常に生成できるが、マウスをホバーす...

Nginx ロケーションマッチングルールの例

1. 文法 場所 [=|~|~*|^~|@] /uri/ { ... } 2. 説明上記の構文から、...

CentOS 7.4 に MySQL 5.7 を手動でインストールする方法

MySQL データベースは、特に JAVA プログラマーの間で広く使用されています。クラウド データ...

Dockerを使用してSonarQubeをインストールする詳細なチュートリアル

目次1. イメージをプルする1.1 関連するイメージをプルして実行する1.1.1 関連する画像を取得...

Linux の特別な権限 SUID、SGID、SBIT の詳細な説明

序文Linux のファイルまたはディレクトリの権限については、通常の rwx 権限についてすべて知っ...

Linuxでファイルを削除してもスペースが解放されない問題の対処方法

問題の背景業務システムのサーバ監視システムからディスク使用率が90%に達したという早期警告通知が来た...

du コマンドを使用して Linux システム ディレクトリのサイズを取得する方法

Linux システムを使用したことがある人なら、Linux システムの ls コマンドは通常、ファイ...

vue+echartsチャートの使用に関する問題記録

序文echarts は私が最もよく使用するチャート作成ツールであり、非常に完全なエコシステムとコンテ...

TCPパフォーマンスチューニングの実装原理とプロセス分析

3ウェイハンドシェイクフェーズクライアントSYNパケットの再試行回数sysctl -w net.ip...