[解決済み] フレックスアイテムをオーバーラップさせる
2022-02-19 04:07:59
質問
未知数のトランプを横一列に並べたいのですが、どうすればいいですか? そのためには、数が多ければ重なるようにしなければならない。 フレックスボックスで、トランプを縮小せずに重ねることができないので困っています。 下の例では、カードが縮小されています。 試しに
flex-shrink: 0
が、その後
max-width
は尊重されなかった。
.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);
}
<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>
解決方法は?
フレックスボックスを使った方法はこうだ。
.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;
}
<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>
技術的に言えば、カードは重なっているわけではなく、切り取られているだけであることに注意してください。しかし、それらは 見える 重なっているように見えます。コツは、各カードをoverflow: hiddenで別の要素で囲むことです。
ラッピングされた要素は、空きスペースに合わせて縮小され、そのスペースに可能な限り多くのカードが表示されます。
hoverルールは、スタックの真ん中にあるカードを完全に表示する方法を示すために入れています。
関連
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] フレックスアイテムを右にフロートさせる
-
[解決済み] ボディの背景色が表示されない?
-
[解決済み] 迷子の終了タグ "head"
-
[解決済み] セレクトボックスのプレースホルダーを作成するにはどうすればよいですか?
-
[解決済み] フレックスボックスのアイテム間の距離を設定するためのより良い方法
-
[解決済み] CSS Flexboxで、"justify-items "と "justify-self "プロパティはなぜないのですか?
-
[解決済み] フレックスアイテムを右寄せにするには?
-
[解決済み] Flexboxの子の高さを親の高さの100%にするには?
-
[解決済み] フレックスアイテムがコンテンツサイズ以上に縮小されないのはなぜですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 名前が''の無効なフォームコントロールはフォーカスされない
-
[解決済み】ローカルの実行ファイルへのハイパーリンクを作成する方法は?
-
[解決済み] html : iframeでhtmlのコンテンツが表示されない。
-
[解決済み] CSS color vs. background-color vs. background?
-
[解決済み] ボディの背景色が表示されない?
-
[解決済み] IE=edge,chrome=1というのは今でも有効なのでしょうか?
-
[解決済み] <html xmlns="http://www.w3.org/1999/xhtml">」は何をするのですか?
-
[解決済み] カーソルを指ポインタに変更
-
[解決済み] div に斜めのエッジを作成する [重複] 。
-
[解決済み] デフォルトで空白を選択