純粋なCSSでは、子要素が親要素の幅制限を突破できる。

純粋なCSSでは、子要素が親要素の幅制限を突破できる。

文章のスタイルでは、このような状況がよく見られます

コードは次のとおりです

<div style="width: 300px;border: 4px solid #000;margin: 20px;padding: 2px;">
    親要素 <div style="border: 1px solid blue;height: 100px;white-space: nowrap;">
     <span>子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素子要素</span>
   </div>
 </div>

この現象をよく考えてみると、なぜでしょうか。子要素は親要素の幅を拡張するべきではないのかと疑問に思うかもしれません。親要素の高さを拡張するのと同じです。なぜでしょうか? では、この子要素の親要素をこの幅まで拡張するにはどうすればよいでしょうか?ここでは2つの解決策があります。

1. 表示: インラインブロック

レイアウトスタイルは次のとおりです

<!DOCTYPE html>
<html lang="ja">

<ヘッド>
  <メタ文字セット="UTF-8">
  <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
  <meta http-equiv="X-UA-compatible" content="ie=edge">
  <title>ドキュメント</title>
</head>
<スタイル>
  #ボックス1 {
    幅: 500ピクセル;
    高さ: 200px;
    境界線: 2px 青実線;
    パディング: 10px;
  }

  #ボックス2 {
    空白: ラップなし;
    表示: インラインブロック;
  }

  #ボックス3 {
    幅: 300ピクセル;
    高さ: 200px;
    背景色: 青紫;
    表示: インラインブロック;
    垂直位置合わせ: 中央;
  }

  #ボックス4 {
    幅: 400ピクセル;
    高さ: 200px;
    背景色: 黒;
    表示: インラインブロック;
    垂直位置合わせ: 中央;
  }
</スタイル>

<本文>
  <div id="box1">
    <div id="box2">
      <div id="box3"></div>
      <div id="box4"></div>
    </div>
  </div>
</本文>

</html>

結果は図の通りです。Box3とbox4はbox2の幅を拡張します。

2. ディスプレイ: インラインフレックス

レイアウトスタイルは次のとおりです

<!DOCTYPE html>
<html lang="ja">

<ヘッド>
  <メタ文字セット="UTF-8">
  <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
  <meta http-equiv="X-UA-compatible" content="ie=edge">
  <title>ドキュメント</title>
</head>
<スタイル>
  #ボックス1 {
    幅: 500ピクセル;
    高さ: 200px;
    境界線: 2px 青実線;
    パディング: 10px;
  }

  #ボックス2 {
    空白: ラップなし;
    ディスプレイ: インラインフレックス;
  }

  #ボックス3 {
    幅: 300ピクセル;
    高さ: 200px;
    背景色: 青紫;
    垂直位置合わせ: 中央;
  }

  #ボックス4 {
    幅: 400ピクセル;
    高さ: 200px;
    背景色: 黒;
    垂直位置合わせ: 中央;
  }
</スタイル>

<本文>
  <div id="box1">
    <div id="box2">
      <div id="box3"></div>
      <div id="box4"></div>
    </div>
  </div>
</本文>

</html>

効果は以下のとおりです

純粋な CSS を使用して子要素を親要素の幅制限を超えるようにする方法についての記事はこれで終わりです。子要素が親要素の幅を超える CSS に関するより関連性の高い記事については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  HTML で入力テキスト入力キャッシュのクリアを禁止する 2 つの方法

>>:  MySQLはデフォルトのエンジンと文字セットの詳細を変更します

推薦する

MySQL テーブルの読み取り、書き込み、インデックス作成、その他の操作の SQL ステートメントの効率最適化の問題を分析します。

前回は、Explain 実行プランの表示、インデックスの分析など、MySQL での SQL クエリの...

Vueの子コンポーネントと親コンポーネントの詳細な分析

目次1. 親コンポーネントと子コンポーネント2. テンプレート分離書き込み1. テンプレートタグ2....

Linux で一般的なソフトウェアを設定する方法

新しいLinuxサーバーを入手する場合、通常は次の5つの構成を実行する必要があります。 HOSTAN...

mysql+mycat、負荷分散、マスタースレーブレプリケーション、読み取り/書き込み分離操作に基づく安定した高可用性クラスタを構築します。

データベースのパフォーマンス最適化には、一般的にクラスタリングが採用されています。Oracle クラ...

MySQL パーティション テーブルの基本入門チュートリアル

序文最近のプロジェクトでは、大量のデータを保存する必要があり、このデータには有効期限があります。クエ...

ネガティブマージン関数の紹介と使用方法の概要

1998 年の CSS2 勧告の時点で、テーブルは徐々に舞台から消え、歴史の中に記録されるようになり...

HTMLインライン要素とブロックレベル要素の基本概念と使用例

HTML タグには、インライン要素とブロックレベル要素の 2 種類があります。まず、インライン要素と...

CSSアダプティブレイアウトは、サブ要素項目の全体的な中央揃えと内部項目の左揃えを実現します。

日常業務では、次のようなレイアウトに遭遇することがあります。親要素のフレーム (ブラウザのサイズに応...

ウェブサイトを黒、白、グレーにする4つのコードの詳細な説明

2008年5月12日に四川省汶川市で発生した地震により、多くの命が失われ、遺憾なことと存じます。国務...

WINDOWS での MYSQL のインストールに関する詳細なチュートリアル

1. インストールパッケージをダウンロードする- お使いのコンピュータシステムに応じて適切なバージョ...

MySQL ストレステストツールの使い方

1. MySQL 独自のストレステストツール - Mysqlslap mysqlslap は、mys...

MySQL の中国語ソートの詳細と例

MySQL の漢字ソートの詳細な説明デフォルトでは、MySQL は日付、時刻、および英語の文字列の並...

PC/Pad/Phoneデバイスに自動的に適応するCSSウェブページレスポンシブレイアウト

序文最近は、PC、iPad、携帯電話、スマートウォッチ、スマートテレビなど、さまざまなデバイスが存在...

Vue ミックスインの使用方法とオプションのマージの詳細な説明

目次1. コンポーネントでの使用2. オプションのマージ要約する1. コンポーネントでの使用Mixi...

Windows サーバー管理におけるセキュリティの考慮事項

ウェブサーバー1. Webサーバーは、wev、cgi、asp機能を無効にするなど、不要なIISコンポ...