【簡単】画像の上にテキストを表示させる方法【CSS】
今回は、「HTMLとCSSを使って画像の上にテキストを表示させる方法」について解説します!
実際のWEB制作の業務でも頻繁に使うので、是非参考にしてください。
目次
画像の上にテキストを表示させるメリット
HTMLとCSSを使わずに、画像自体にテキストをあらかじめ表示させることもできます。
しかし、HTMLとCSSを使って画像の上にテキストを表示させることには、以下のようなメリットがあります。
・後でテキストのサイズやフォントを調整できる
・レスポンシブデザインのサイズを調整することができる(例、PCは20pxでスマホの時は12pxにする)
画像にテキストを含んでしまうと、テキストを変更したい時にまた画像を1から作り直さないといけません。
しかし、今回紹介する方法だと画像とテキストは切り離されているので、テキストを柔軟に変えることが出来るのです!
【簡単】画像の上にテキストを表示させる方法【CSS】
それでは「画像の上にテキストを表示させる方法」について解説します!
完成形は以下のようになります。

簡単なので、是非参考にしてください。
HTML
まずはHTMLのコードから。
<div class="box">
<img src="./image/img.png" alt="">
<p>画像の上にテキストを表示</p>
</div>
親要素であるboxクラスの子要素に「img」と「p」タグを用意しました。
画像のファイルはご自由に変えてください。
CSS
次はCSSのコード。
.box {
text-align: center;
position: relative;
}
.box p {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: #fff;
}
◎1行目〜4行目
「text-align: center;」で要素を中央寄せに。
そして親要素boxに対して「position: relative;」を指定します。
◎5行目〜11行目
親要素boxの子要素であるpタグ(テキスト)に対して「position: absolute;」を指定することで、絶対配置に。
そして「top: 50%;」と「left: 50%;」で上からと下から50%の位置にテキストを配置させます。
これだけだと少しずれているので、「transform: translate(-50%, -50%);」を指定することで、テキストが綺麗に上下中央揃えになります。
そして最後にテキストに「color: #fff;」で文字色を白にします。
画像の上にテキストを表示させるポイントは親要素に「position: relative;」を指定し、子要素であるテキストに「position: absolute;」を指定して絶対配置にすること。
子要素であるテキストを絶対配置にすることで、親要素を基準にテキストの配置を決めることが出来るのです。
まとめ
以上が、「HTMLとCSSを使って画像の上にテキストを表示させる方法」でした。
是非制作の参考にしてください!




