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

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

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

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

HTML5

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

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

Q&A

解決済

2回答

1420閲覧

Bootstrapでレスポンシブデザインを実現する際、行の高さを合わせる方法。

mad_hacker

総合スコア1

CSS3

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

HTML5

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

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

0グッド

0クリップ

投稿2021/05/01 07:15

前提・実現したいこと

Bootstrapを使用したWeb制作の学習をしています。
現状独学3カ月目なので、知識はとても浅いです。
画像の通り、レスポンシブに対応させるとテキストが改行され、下の画像の位置が他の列と揃わなくなってしまいます。
他の行の高さと合わせることは簡単にできるでしょうか。
つたないコードですが、ご教授いただけたら幸いです。
よろしくお願いいたします。

該当のソースコード

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>orient</title> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"> <link rel="stylesheet" href="style.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script> </head> <body> <!--- Start Features Section--> <div id="features" class="offset"> <div class="container text-center"> <div class="col-12"> <h3 class="heading-features">FEATURES</h3> <div class="heading-underline"></div> </div> <div class="row features-responsive"> <ul class="col-md-4 features-landing"> <li> <p class="features-category">ご贈答に最適/全身ケアセット</p> <p class="features-info">天然由来成分のみで作った多くのスキンケア商品が、贈り物に最適なギフト仕様になった人気のセットです。</p> <a href="#"><img src="" class="features-image" alt="特徴"></a> <div class="features-content"> <a href="#" class="features-text"><strong class="typesquare_option">【送料込】</strong>全身スキンケアセット(3種類入り)</a> <p class="price">3,980円(税込)</p> </div> </li> </ul> <ul class="col-md-4 features-landing"> <li> <p class="features-category">個人様向け/ハンドケア</p> <p class="features-info">天然由来成分のみで作ったハンドクリームで、お肌に悩みがあるどんな方でも安心して扱える商品です。</p> <a href="#"><img src="" class="features-image" alt="特徴"></a> <div class="features-content"> <a href="#" class="features-text">天然由来成分配合ハンドクリーム(1本入り)</a> <p class="price">1,280円(税込)</p> </div> </li> </ul> <ul class="col-md-4 features-landing"> <li> <p class="features-category">ご贈答向け/フラワーセット</p> <p class="features-info">その季節にあった種類のお花を、お客様に選んでいただき好みに合わせてご自宅までお届けします。</p> <a href="#"><img src="" class="features-image" alt="特徴"></a> <div class="features-content"> <a href="#" class="features-text">観賞用季節のフラワー(4本入り)</a> <p class="price">1,500円(税込)</p> </div> </li> </ul> </div> </div> </div> <!---End Features Section--> <!---End contact Section--> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script> </body> </html>
body { margin: 0; font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "HiraKakuProN-W3", sans-serif"ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "Yu Mincho Light", "Yu Mincho", sans-serif; } * { box-sizing: border-box; list-style: none; } .container { max-width: 1400px; } li { display: list-item; } /*---Features Section---*/ #features { width: 100%; } .heading-features { margin-top: 60px; } .features-image { max-width: 100%; max-height: 550px; } .features-image:hover { opacity: 0.6; transition: 0.5s all; } .features-category { color: #997072; font-size: 12px; text-align: left; flex-flow: row wrap; } .features-info { font-size: 16px; text-align: left; flex-flow: row wrap; } .typesquare_option { color: #8b1c2a; } .features-responsive { flex-flow: row wrap; } .features-content { text-align: left; } .features-text { margin-top: 10px; display: block; } .price { margin-top: 16px; margin-bottom: 18px; } .features-content a { text-decoration: none; color: black; }

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

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

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

guest

回答2

0

ベストアンサー

方法1. flexレイアウトにする

li要素をflex-direction: column, justify-content: space-betweenのflexレイアウトにして、文章(.features-info)より上の部分と画像より下の部分をdivかなんかでラップすれば、それらが上下に配置されるため行数に関わらず画像の位置は一定になります。


方法2. tableレイアウトにする

tableレイアウトにしてしまえば当然横のセルとの高さは揃います。


方法3.文章エリアの高さを指定する

結局は行数によって文章エリアの高さが変わってしまうのが問題なので、エリアの高さを指定すれば良いです。ただpx指定だとウィンドウが狭くて行数が多くなったときと、広くて行数が少ないときでエリアの高さが変わらないため、ウィンドウ幅によって画像との隙間の大きさが変わってしまいます。そのため全体的にvwなどで指定する必要が出てくると思います。

投稿2021/05/01 07:57

編集2021/05/01 08:10
Masa-Shin

総合スコア269

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

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

mad_hacker

2021/05/01 08:04

Masa-Shinさん 多くの方法のご提示誠にありがとうございます。 なんでこの考えが浮かばなかったのか、経験や知識不足を痛感いたしました。 これにめげずにプログラミング頑張っていきたいと思います!!
guest

0

イメージ説明
画像がつぶれている可能性があるためこちらに貼ります!

投稿2021/05/01 07:26

mad_hacker

総合スコア1

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問