CSS Web制作

【CSS】floatを使って画像に対してテキストを回り込ませる方法

2022年8月25日

※ 当サイトではアフィリエイト広告を利用しています

画像にテキストを回り込ませるのってどうやるの?

個人的には実務で年に1回見るかどうかという頻度ですが、実装方法を知らないと『???』となること間違いなしだと思うので、ここに書いておきたいと思います。

じゅんぺいブログは、Web制作コーディングWordPress制作)の技術記事を中心に、約500記事公開しています。ぜひ他の記事も参考にしてみてください!
完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適です。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇
(有料になっていたらすいません🙇‍♂️)

\ 完全無料 /

ZeroPlus Gate公式サイト

毎日先着制!

floatを使って画像に対してテキストを回り込ませる方法

『画像に対してテキストを回り込ませる』とはどういう事か?と思うかも知れませんが、文章で解説するより見た方が早いと思うので一旦こちらを見て下さい。

See the Pen
float
by junpei (@junpei-sugiyama)
on CodePen.

左上のHTMLかCSSをクリックすると画面幅が狭くなりますが、それに応じてテキストも動きます。

右上の『EDIT ON CODEPEN』をクリックすると全画面になるので、画面幅を変えながら確認すると分かりやすいと思います。

これはこの後解説するfloatというCSSを使っているのですが、floatを使わないとこうなります。

See the Pen
float未使用
by junpei (@junpei-sugiyama)
on CodePen.

 

コード解説

それではコードを見てみます。

<div class="container">
  <div class="sample-img">
    <img src="画像パス" alt="">
  </div>
  <div class="text">
    <p>Lorem ipsum・・・</p>
    <p>テキストが入ります・・・</p>
  </div>
</div>
.sample-img {
  float: left; /* 画像を左にする場合 */
  margin-right: 20px; /* テキストとの余白 */
  max-width: 500px;
  width: 50vw;
}
p {
  font-size: 20px;
  line-height: 1.5;
}
img {
  height: auto;
  width: 100%;
}
.text {
  padding: 20px;
}

ポイントは3点。

  • HTMLはimgを最初に書く
  • img(またはimgの親要素)にfloatを書く
  • テキストとの余白はimg(またはimgの親要素)にmargin(paddingでも余白は作れます)

特に最初の『HTMLはimgを最初に書く』はハマりやすいポイントかと思うのでご注意下さい。

あとは『テキストを回り込ませる』なのでテキストにfloatを書きたくなりますが、書くのは画像の方です(『画像を回り込ませる』という言い方をする方もいます)

上記は画像を左にする場合で、右にする場合は少しコードを変えます。

.sample-img {
  float: right; /* 画像を右にする場合 */
  margin-left: 20px; /* テキストとの余白 */
}

See the Pen
float(画像右)
by junpei (@junpei-sugiyama)
on CodePen.

 

2つ目の文章だけ回り込ませない方法

先ほどはpタグが2つなので2つの文章が書いてありましたが、2つ目の文章は回り込ませたくない場合はどうすればいいでしょうか?

その場合は2つ目のpタグにclear: both;を書けばOKです。

See the Pen
Untitled
by junpei (@junpei-sugiyama)
on CodePen.

floatは昔は横並びにしたい時に使っていましたが、現在ではテキストの回り込みくらいでしか使う機会はないかと思いますが、たまーに今回のようなデザインもあるので頭の片隅に覚えておきましょう。

また、円形画像にテキストを回り込ませる方法については、以下の記事を参照下さい。

あわせて読みたい
【CSS】円形画像に沿ってテキストを回り込ませて表示する方法
【CSS】円形画像に沿ってテキストを回り込ませて表示する方法

続きを見る

以上になります。

この記事が役に立ったと思ったら、シェアボタンからX(旧Twitter)などにシェアすると、いいねされてフォロワーが増えたりすることがあるよ!
  • この記事を書いた人

じゅんぺい

37歳からWeb制作とブログ開始。Web制作歴5年目でコーディングとWordPressオリジナルテーマ制作が中心。これまで120件以上を納品。当ブログ月間最高15万PVで、370記事以上はWeb制作の技術記事。コンテンツ販売→累計売上1200万円&1500部超え。X(旧Twitter)フォロワー7200人以上。2024年3月からブログの経験を活かしてライターとしても活動を開始。

-CSS, Web制作