質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Q&A

解決済

3回答

762閲覧

子要素に左右されず親要素の幅を揃えたい

cae_03

総合スコア8

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

0グッド

0クリップ

投稿2022/04/17 15:23

お世話になっております。
模写コーディング中なのですが下記画像のように文章の量で親要素が伸びてしまいます。
自分でも調べてみたのですが分からず、教えていただけると幸いです。

↓模写サイト
https://prog-8.com/

イメージ説明

<div class="item-container"> <h2>サクセスストーリー</h2> <p class="sub-lead">プログラミングの世界への第一歩を踏み出し、夢を実現した方々のサクセスストーリーを紹介します。</p> <div class="success-container"> <div class="item"> <img src="img/1570587077399.png" alt=""> <h3 class="lead">「プログラミングで人生180度変わった。」小学生がJavaScriptでゲーム開発するようになるまで</h3> <p class="name">村馬弘一</p> <p class="from">japan</p> </div> <div class="item"> <img src="img/1560417815612.jpg" alt=""> <h3 class="lead">「教育現場にエンジニア経験を還元したい!」元小学校教員エンジニアが叶えたい夢とは</h3> <p class="name">三浦卓馬</p> <p class="from">japan</p> </div> <div class="item"> <img src="img/1561420948224.jpg" alt=""> <h3 class="lead">「プログラミングはもうやりたくなかったけど必要に迫られて」mikanグロースハッカーの超実践SQL活用法</h3> <p class="name">飯田 諒</p> <p class="from">japan</p> </div> <div class="item"> <img src="img/1565058933263.png" alt=""> <h3 class="lead">「私、プログラミングできるかも。」アプリ版Progateから2ヶ月で、アイドルからエンジニアに転職した話</h3> <p class="name">五十嵐 夏菜</p> <p class="from">japan</p> </div> <div class="item"> <img src="img/1566914605258.png" alt=""> <h3 class="lead">「起業準備はProgateしかしてません」 YOUTRUST代表岩崎由夏のプログラミング勉強法</h3> <p class="name">岩崎 由夏</p> <p class="from">japan</p> </div> <div class="item"> <img src="img/1570587077399.png" alt=""> <h3 class="lead">「夢みていたところで働けるのは幸せです」プログラミング未経験者が憧れのBASEで働くまで</h3> <p class="name">三佐和 千鶴</p> <p class="from">japan</p> </div> </div> </div> ここからCSS .item-container{ background-color: #2b546a; color: #F8FBFE; text-align: center; } .item-container h2{ font-size: 32px; font-weight: 700; line-height: 55px; padding: 100px 0 20px 0; } .item-container .sub-lead{ font-size: 16px; line-height: 32px; font-weight: 400; padding: 0 0 60px 0; } .success-container{ padding: 0 220px; display: flex; flex-wrap: wrap; } .success-container .item{ max-width: 310px; height:100%; background-color: #fff; border-radius: 10px; text-align: center; padding: 40px 24px; box-sizing: border-box; margin-bottom:30px; display: flex; flex-direction: column; align-items: center; } .success-container .item:nth-of-type(2){ margin: 0 30px; } .success-container .item:nth-of-type(5){ margin: 0 30px; } .item img{ width: 100px; height: auto; border-radius: 50%; margin-bottom: 40px; } .item .lead{ font-size: 16px; font-weight: 700; line-height: 26px; color:#2b546a; } .item .name{ font-size: 16px; font-weight: 700; line-height: 27px; color:#bac6d3; padding:50px 0 5px 0; } .item .from{ font-size: 12px; font-weight: 700; line-height: 21px; color:#bac6d3; }

汚いコードで申し訳ないです。。。
よろしくお願いいたします!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

提示のコードではFlexレイアウトをつかっていますので、.itemheight:100%; を削除すれば各行の高さはそろいます。デフォルトが align-items: stretch; なので。

あと、アイテム間の余白をmargin で設定してますが、コンテナの方で gapプロパティで設定するとシンプルになります。

css

1.success-container{ 2 padding: 0 220px; 3 display: flex; 4 flex-wrap: wrap; 5 gap: 30px; /* 追加 アイテム間余白 */ 6} 7 8.success-container .item{ 9 max-width: 310px; 10/* height:100%; 削除 */ 11 background-color: #fff; 12 border-radius: 10px; 13 text-align: center; 14 padding: 40px 24px; 15 box-sizing: border-box; 16/* margin-bottom:30px; 削除 */ 17 display: flex; 18 flex-direction: column; 19 align-items: center; 20} 21/* 削除 22.success-container .item:nth-of-type(2){ 23 margin: 0 30px; 24} 25 26.success-container .item:nth-of-type(5){ 27 margin: 0 30px; 28} 29*/

おまけ

下記のようにをmargin-top: auto;を追加しておくと、名前の位置を揃えることができます。

css

1.item .name{ 2 font-size: 16px; 3 font-weight: 700; 4 line-height: 27px; 5 color:#bac6d3; 6 padding:50px 0 5px 0; 7 margin-top: auto; /* 追加 */ 8}

投稿2022/04/18 02:44

編集2022/04/18 02:46
hatena19

総合スコア33699

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cae_03

2022/04/18 13:51

わかりやすい回答ありがとうございます!! 精進したいと思います。
guest

0

どうしたいのか期待する結果がよく分かりませんが、.item .lead に高さを指定してください。

.item .lead { height: 104px; font-size: 16px; font-weight: 700; line-height: 26px; color: #2b546a; }

投稿2022/04/18 01:32

arcxor

総合スコア2859

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

「item」クラスの、高さ設定で制御できます。
サンプルコードに当クラスがなかったので、強制的に下のコードを追加するとわかると思います。

.item { height: 30rem!important; }

↑このクラスの要素の高さを、30文字分サイズに統一する指定です。

ボックスの中の文字数が可変の場合は、最長何文字にするか決めておく必要があります。
この高さの値は全体の何パーセント固定にするなど、随意に決めてください。

投稿2022/04/17 20:36

ants

総合スコア63

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問