CSS で画像の上にテキストを配置する

Jay Singh 2023年2月20日
CSS で画像の上にテキストを配置する

場合によっては、Web ページの写真にテキストを追加したり、画像のテキストから画像のキャプションを作成したりできます。HTML コンポーネントのみを使用して、テキストを画像の上に配置することはできません。

これには CSS 属性が必要になります。このチュートリアルでは、CSS を使用して画像上にテキストを配置する方法を示します。

CSS で画像の上にテキストを配置する

画像上のテキストは、CSSposition 属性を使用して配置できます。そのためには、画像 position:relative とテキスト position:absolute を入力します。

<div> 要素内に、両方のコンポーネントを追加します。top、bottom、left、および right プロパティを使用して、画像上の特定の場所にテキストを配置する場合があります。

コード:

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
.container {
  position: relative;
  text-align: center;
  color: blue;
}
.bottom-left {
  position: absolute;
  bottom: 5px;
  left: 12px;
}
.top-left {
  position: absolute;
  top: 5px;
  left: 12px;
}
.top-right {
  position: absolute;
  top: 5px;
  right: 12px;
}
.bottom-right {
  position: absolute;
  bottom: 5px;
  right: 12px;
}
.centered {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
</style>
</head>
<body>

<h2>Image Text</h2>
<p>How to place text over an image:</p>

<div class="container">
  <img src="/img/DelftStack/logo.png" alt="DelftStack Logo" style="width:100%;">
  <div class="bottom-left">Left Bottom</div>
  <div class="top-left">Left Top</div>
  <div class="top-right">Right Top</div>
  <div class="bottom-right">Right Bottom</div>
  <div class="centered">Center</div>
</div>
</body>
</html>

CSS を使用して画像上にテキストを配置する別の例を次に示します。

コード:

<html lang="en">
<head>
<meta charset="utf-8">
<title>HTML</title>
<style>
    .container {
      position: relative;
    }
    .text {
     position: absolute;
     color: white;
     top: 5px;
    }
</style>
</head>
<body>
    <h2> Positioning the text over image</h2>
    <div class="container">
     <img src="/img/DelftStack/logo.png" alt="DelftStack Logo">
     <h4 class="text"> Add any text to the image </h4>
    </div>
</body>
</html>

関連記事 - CSS Alignment