カード型のレイアウトの勉強をしています。
【コーディングの解説】HTMLとCSSでカードグループをつくる
上記のサイトをみてやっていくと
2行のレイアウトは
<div class="card-group"> <div class="card"> <div class="card__imgframe"> </div><!-- /.card__imgframe --> <div class="card__textbox"> <div class="card__titletext"> タイトルが入ります。タイトルが入ります。タイトルが入ります。 </div><!-- /.card__titletext --> <div class="card__overviewtext"> 概要が入ります。概要が入ります。概要が入ります。概要が入ります。 </div><!-- /.card__overviewtext --> </div><!-- /.card__textbox --> </div><!-- /.card --> <div class="card"> <div class="card__imgframe"> </div><!-- /.card__imgframe --> <div class="card__textbox"> <div class="card__titletext"> タイトルが入ります。タイトルが入ります。タイトルが入ります。 </div><!-- /.card__titletext --> <div class="card__overviewtext"> 概要が入ります。概要が入ります。概要が入ります。概要が入ります。 </div><!-- /.card__overviewtext --> </div><!-- /.card__textbox --> </div><!-- /.card --> <div class="card"> <div class="card__imgframe"> </div><!-- /.card__imgframe --> <div class="card__textbox"> <div class="card__titletext"> タイトルが入ります。タイトルが入ります。タイトルが入ります。 </div><!-- /.card__titletext --> <div class="card__overviewtext"> 概要が入ります。概要が入ります。概要が入ります。概要が入ります。 </div><!-- /.card__overviewtext --> </div><!-- /.card__textbox --> </div><!-- /.card --> <div class="card"> <div class="card__imgframe"> </div><!-- /.card__imgframe --> <div class="card__textbox"> <div class="card__titletext"> タイトルが入ります。タイトルが入ります。タイトルが入ります。 </div><!-- /.card__titletext --> <div class="card__overviewtext"> 概要が入ります。概要が入ります。概要が入ります。概要が入ります。 </div><!-- /.card__overviewtext --> </div><!-- /.card__textbox --> </div><!-- /.card --> </div><!-- /.cardgroup -->
.card-group{ margin-left: auto; margin-right: auto; max-width: 640px; width: 90%; height: auto; /* ポイント1 */ display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; } /* ポイント2 */ .card-group > :nth-child(2n){ margin-left: 20px; } /* ポイント3 */ .card-group > :nth-child(n+3){ margin-top: 20px; } .card{ /* ポイント4 */ width: calc((100% - 20px * 1) /2); height: auto; border-radius: 8px; overflow: hidden; box-shadow: 0 4px 15px rgba(0,0,0,.2) } .card__imgframe{ width: 100%; height: auto; padding-top: 56.25%; background: #bbb; box-sizing: border-box; } .card__textbox{ width: 100%; height: auto; padding: 20px 18px; background: #fff; box-sizing: border-box; } .card__textbox >*+*{ margin-top: 10px; } .card__titletext{ font-size: 20px; font-weight: bold; line-height: 125%; } .card__overviewtext{ font-size: 12px; line-height: 150%; }
サイトの説明通りうまくいくのですが、
.card-group > :not(:nth-child(3n-2)){ margin-left: 20px; } ■カードレイアウトの始め以外に余白を空ける指定 否定セレクタ(:not)と1行目の要素(3n-2)の組み合わせで最初の行以外の要素を選択 .card{ width: calc((100% - 20px * 2) / 3); } ■余白の数を3で割る
の指定をすると、
記述の仕方がまちがっているのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/03 07:30