重複するフレックス項目を実現する方法: 縮小要素を克服し、正常な重複を実装しますか?

Barbara Streisand
リリース: 2024-10-31 11:47:02
オリジナル
248 人が閲覧しました

How to Achieve Overlapping Flex Items: Overcoming Shrinking Elements and Implementing Graceful Overlaps?

重複するフレックス項目

フレックスボックスを使用して水平方向に重複する一連の要素を作成することは、要素のサイズが縮小する可能性があるため、困難な場合があります。 。問題を詳しく調べて解決策を探ってみましょう。

以下の例は問題を示しています:

<code class="css">.cards {
  display: flex;
  max-width: 300px;
}

.card {
  width: 50px;
  height: 90px;
  border: 1px solid black;
  border-radius: 3px;
  background-color: rgba(255, 0, 0, 0.4);
}</code>
ログイン後にコピー
<code class="html"><div class='cards'>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
  <div class='card'></div>
</div></code>
ログイン後にコピー

この例では、カードは最大幅内に収まるように縮小します。制約があり、望ましくない結果をもたらします。これを解決するために、修正されたアプローチを採用しましょう:

<code class="css">.cards {
  display: flex;
  align-content: center;
  max-width: 35em;
}

.cardWrapper {
  overflow: hidden;
}

.cardWrapper:last-child, .cardWrapper:hover {
    overflow: visible;
}

.card {
    width: 10em;
    min-width: 10em;
    height: 6em;
    border-radius: 0.5em;
    border: solid #666 1px;
    background-color: #ccc;
    padding: 0.25em;
  
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}</code>
ログイン後にコピー
<code class="html"><div class="cards">
  <div class="cardWrapper">
    <div class="card">card 1 blah blah blah</div>
  </div>
  <div class="cardWrapper">
    <div class="card">card 2 blah blah blah</div>
  </div>
  <div class="cardWrapper">
    <div class="card">card 3 blah blah blah</div>
  </div>
  <div class="cardWrapper">
    <div class="card">card 4 blah blah blah</div>
  </div>
  <div class="cardWrapper">
    <div class="card">card 5 blah blah blah</div>
  </div>
</div></code>
ログイン後にコピー

この修正されたソリューションでは、各カードの周囲にラッパー (cardWrapper) を導入します。ラッパーはコンテナとして機能し、その内容のオーバーフロー動作を制御します。デフォルトでは、ラッパーは非表示になりますが、最後のラッパーとカーソルを置いたラッパーが表示されるため、必要に応じてカードを重ねることができます。このアプローチにより、カードが適切な寸法を維持し、適切に重なり合うことが保証されます。

以上が重複するフレックス項目を実現する方法: 縮小要素を克服し、正常な重複を実装しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!