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

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

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

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

HTML

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

CSS

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

Q&A

解決済

1回答

764閲覧

CSSで要素の右側の文字列を同じ場所で改行させたい

skyth

総合スコア2

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

HTML

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

CSS

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

0グッド

0クリップ

投稿2020/07/16 06:40

前提・実現したいこと

WordPressの固定ページに自分の投稿した記事を表示させるとき
アイキャッチ画像の右側にタイトルを設置したい。

ウィンドウサイズが小さくなったりタイトルが長くなった場合にアイキャッチ画像の右側でタイトルを改行させたい。

発生している問題・エラーメッセージ

アイキャッチ画像の右側に表示されているタイトルが タイトルのサイズが長いときやウィンドウサイズが小さくなったとき アイキャッチ画像の下に移動してしまう。 タイトルを改行させることで下に移動するのを回避させたい。

該当のソースコード

html

1<div class="box"> 2 <div class="box-img"> 3 <?php if (has_post_thumbnail()) : ?> 4 <?php 5 the_post_thumbnail(array(150, 200)); ?> 6 7 <?php else : ?> 8 <img src="<?php echo get_stylesheet_directory_uri(); ?>/images/default.jpg"> 9 <?php endif; ?> 10 </div> 11 <div class="box-text"> 12 <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> 13 </div> 14</div>

css

1.box-img, 2.box-text{ 3 display: inline-block; 4 vertical-align: top; 5}

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

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

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

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

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

guest

回答1

0

ベストアンサー

inline-block にして横並びにしてますが、inline-block は幅を設定しないと中身の幅と同じになります。
下記のような感じで幅を適切に設定すればいいでしょう。

css

1.box-img, 2.box-text{ 3 display: inline-block; 4 vertical-align: top; 5} 6 7.box-text{ 8 font-size: 40px; 9 width: calc(100% - 310px) /* 画像の幅が300pxの場合 */ 10}

html

1<div class="box"> 2 <div class="box-img"> 3 <img src="https://placehold.jp/300x300.png"> 4 </div> 5 <div class="box-text"> 6 <a href="">title title title title title</a> 7 </div> 8</div>

ちなみに、
CSS FlexBoxで横並びにすればCSSが自動で幅を適切に拡縮してくれますので下記のように簡単になります。

css

1.box2 { 2 display: flex; 3} 4.box-text2 { 5 font-size: 40px; 6}

html

1<div class="box2"> 2 <div class="box-img2"> 3 <img src="https://placehold.jp/300x300.png"> 4 </div> 5 <div class="box-text2"> 6 <a href="">title title title title title</a> 7 </div> 8</div>

CodePenサンプル

投稿2020/07/16 07:36

hatena19

総合スコア33715

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

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

skyth

2020/07/16 07:57

ご回答ありがとうございます。 flexを使用すると簡単になりますね! 重ねて質問させていただきたいのですが、 flexを使用した際に画像の幅も同時に変化してしまうのですが 画像の幅を固定する方法はありますでしょうか。 .box-imgを固定したままtextの部分だけを可変させたいです。
hatena19

2020/07/16 09:27

下記でどうぞ。 .box-img { flex-grow: 0; flex-shrink: 0; }
skyth

2020/07/17 01:09

解決することができました! ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問