CSS Web制作

【CSS】吹き出しの作り方と影を付ける方法【三角形にも影を付ける】

2024年2月25日

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

吹き出しってどうやって作るの?
吹き出しの三角形の部分に影を上手く付けられない

実務でもたまにあるのが吹き出しのコーディングですが、これに影を付けようとすると上手くいかないことがあります。

今回は、CSSで吹き出しを作る方法と、吹き出しの三角形を含めて影を付ける方法を解説していきます。

じゅんぺいブログは、Web制作コーディングWordPress制作)の技術記事を中心に、約500記事公開しています。ぜひ他の記事も参考にしてみてください!
完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
  • 完全無料
  • 30日間でWeb制作を学べる
  • 現役エンジニアへの質問無制限
  • オンラインの動画学習なので時間場所を問わず勉強可能
  • 最大4回の学習サポート面談
  • 毎日人数制限ありの先着制
無料なのに専属のメンターが付き、現役エンジニアへの質問も無制限という破格のサービスです。いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇
(有料になっていたらすいません🙇‍♂️)

\ 完全無料 /

ZeroPlus Gate公式サイト

毎日先着制!

CSSで吹き出しを作る方法

まずは、影なしで吹き出しを作る方法です。

HTMLはこちら。

<div class="balloon balloon-top">吹き出し上</div>
<div class="balloon balloon-right">吹き出し右</div>
<div class="balloon balloon-bottom">吹き出し下</div>
<div class="balloon balloon-left">吹き出し左</div>

三角形の位置は、上下左右4つのパターンで分けます。

CSSはこちら(余白やフォントサイズなどは省略しています)

/* 共通のCSS */
.balloon {
  background-color: #ccc;
  border-radius: 8px;
  position: relative;
  width: 140px;
}
.balloon::before {
  background-color: #ccc;
  content: "";
  height: 30px;
  position: absolute;
  width: 30px;
}
/* 吹き出し上 */
.balloon-top::before {
  clip-path: polygon(0 100%, 50% 0, 100% 100%);
  left: 43%;
  top: -20px;
}
/* 吹き出し右 */
.balloon-right::before {
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  right: -20px;
  top: 22%;
}
/* 吹き出し下 */
.balloon-bottom::before {
  bottom: -20px;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  left: 43%;
}
/* 吹き出し左 */
.balloon-left::before {
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  left: -20px;
  top: 22%;
}

三角形は擬似要素でclip-pathを使っています。

三角形の作り方は、以下の記事を参照下さい。

【サンプル付き】CSSで三角形を作る2つの方法(border、clip-path使用)
CSSで三角形を作る2つの方法(clip-path、border使用)

続きを見る

三角形の位置に関しては、top、right、bottom、leftなどで調整して下さい。

デモはこちらです。

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

 

CSSで吹き出しをに影を作る方法

吹き出しに影を作る方法は簡単で、以下のコードを追記するだけです。

.balloon {
  filter: drop-shadow(5px 5px 3px rgba(0, 0, 0, .6));
}

デモはこちら。

See the Pen
吹き出しに影
by junpei (@junpei-sugiyama)
on CodePen.

ちなみに、box-shadowを使うと三角形部分に影が付きません。

See the Pen
吹き出しに影(失敗例)
by junpei (@junpei-sugiyama)
on CodePen.

まとめ:吹き出しを作るには擬似要素、影を付けるにはdrop-shadowを使おう

今回は、CSSで吹き出しを作る方法と、吹き出しの三角形部分を含めて影を付ける方法を解説してきました。

clip-pathに影を付ける方法は、以下の記事でも解説しています。

あわせて読みたい
【CSS】clip-pathに影(shadow)を付ける2つの方法【三角形もOK】
【CSS】clip-pathに影(shadow)を付ける2つの方法【三角形もOK】

続きを見る

以上になります。

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

 

  • この記事を書いた人

じゅんぺい

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

-CSS, Web制作