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

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

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

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

315閲覧

テキストとテキストが重なる場合の対処方を教えてください

takami3

総合スコア18

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2025/03/18 08:08

編集2025/03/18 23:59

イメージ説明テキストとテキストが重なる場合の対処方を教えてください
画像とテキストを横並びに2行配置していますが、テキストが画像の枠(高さ)heightを超えると
次の項目のテキストにかぶさってしまいます
以下試してみましたがダメでした。
max-height: 280px;指定
<br>を末尾に記述
次の項目のテキストにかぶさらないようにする方法があれば教えてください
よろしくお願いします

<style>
.flex {
max-width: 960px;
margin: 20px auto;
display: grid;
gap: 20px;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.flex .right {
max-width: 460px;
max-height: 280px;
margin: 0.5em 0em 0em 1.5em;
}
.flex img {
width: 100%;
height: 100%;
}
.flextext {
font-size: 1.8rem;
letter-spacing: 0.1em;
word-spacing: 0.2em;
}
</style>
<div class="flex">
<a href=""><img class="image" src="" alt="" title=""></a>
<div class="right">
<h3><strong>タイトル</strong></h3>
<p class="flextext">テキストテキストテキストテキストテキストテキストテキストテキスト</p>
<p class="flextext">テキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p><br>
</div>
</div>
<div class="flex">
<a href=""><img class="image" src="" alt="" title=""></a>
<div class="right">
<h3><strong>タイトル</strong></h3>
<p class="flextext">テキストテキストテキストテキストテキストテキストテキストテキスト</p>
<p class="flextext">テキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p>
<p class="flextext">テキストテキストテキスト</p><br>
</div>
</div>

追記します
記載しているコードは必須ではありません
目標は以下の通りです
1,画像とテキスト横並びにしたものを複数設置したい
2,レスポンシブデザインに対応し、画面が小さいくなれば画像とテキストが縦に並ぶ
3,メディアクエリを使わない
上記に加えて今回の問題
次の項目のテキストにかぶさらないようにすることです
何卒宜しくお願い致します

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

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

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

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

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

takami3

2025/03/18 08:26

ご返答いただきありがとうございます はいあっています
int32_t

2025/03/18 08:28

質問文を書くとき、HTMLソースの最初の前に「```html」という行を、最後の次に「```」という行を追加してください。各行を ` ` で囲む必要はありません。
utm.

2025/03/19 04:06

max-height: 280px; をむしろ指定しなければ治るのでは? 大抵は高さが指定されていて、その枠に入り切ってないのではみ出すのだと思われます
maisumakun

2025/03/19 05:33

> 次の項目のテキストにかぶさらないようにすることです はみ出るほどテキストがあった場合、「どんなレイアウトにしたい」のでしょうか。
yambejp

2025/03/19 08:59

ほしい結果を図示してください
guest

回答2

0

ベストアンサー

以下試してみましたがダメでした。
max-height: 280px;指定

逆にこれが指定してあるから重なるのでは。
これを削除すれば重ならないです。

ただし、テキスト量にあわせて高さが拡張するので、画像が縦にその分伸びます。
それが、いやなら、画像の height: 100%; を削除すればいいでしょう。

css

1.flex img { 2 width: 100%; 3 /* height: 100%; これを削除 */ 4}

その代わり画像のしたに空白があきます。

CodePenサンプル

max-height: 280px; が必須なら、yambejpさんの回答のようにoverflow:hidden;ではみ出した部分を非表示にするしかないでしょう。

投稿2025/03/18 12:57

編集2025/03/18 15:21
hatena19

総合スコア34292

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

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

takami3

2025/03/18 13:39

回答ありがとうございます。試してみましたが解決できませんでした。
takami3

2025/03/19 00:01

ご回答ありがとうございます。 max-height: 280px;は必須ではありません はみ出した部分を非表示にすることは本末転倒です 宜しくお願い致します
hatena19

2025/03/19 00:52

回答にCodePenサンプルサンプルを追加したので、それが想定と違うなら、 どの部分が違っていて、どのようにしたいのか具体的に説明してください。
takami3

2025/03/19 09:28

hatena19様 ご連絡ありがとうございます 確認しました 問題なく表示できるようになりました 心から感謝申し上げます。 本当にありがとうございます
guest

0

溢れているのですからそういうものでしょう
逆にどうしたいのでしょうか?

とりあえず溢れたら消したいなら

css

1.flex{ 2overflow:hidden; 3}

のを記載すれば重なることはなくなります。

ちなみにグリッドレイアウトを採用するなら「flex」というクラスで処理するのは紛らわしいのでやめた方がいいです。

投稿2025/03/18 08:16

yambejp

総合スコア117413

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.32%

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

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

質問する

関連した質問