CSS WEB制作

CSS3のみで吹き出しを作成してみました!上下左右どこでも大丈夫!

投稿日:2014年9月16日 更新日:

凝ったデザインなどには吹き出しなどを作成したりします。
ですが、内容を画像ではなくテキストにしたい場合があると思います。
吹出し画像を文字数に合わせて調節したり、分割して組み立てたりするのは大変ですよね。
そんなときにCSSのみで吹き出しが作れたらとても助かります。

CSSで吹き出しを作成する基本的な部分をご紹介したいと思います。
まずは吹き出しで重要な部分の三角形を作成してみます。

上向き

border:50px solid transparent;
width:0;
border-bottom-color:#000;
border-top-width:0;

下向き

border:50px solid transparent;
width:0;
border-top-color:#000;
border-bottom-width:0;

右向き

border:50px solid transparent;
width:0;
border-left-color:#000;
border-right-width:0;

左向き

border:50px solid transparent;
width:0;
border-right-color:#000;
border-left-width:0;

次にこれらを利用して吹き出しを作成してみます。
枠のない吹出しを作成する場合は、:beforeと:afterのどちらかを使って作成します。

上向き
.demo05 {
padding: 20px;
margin-bottom:10px;
text-align: center;
background-color: #ddd;
position:relative;
}
.demo05:after {
border:20px solid transparent;
border-bottom-color:#ddd;
border-top-width:0;
top:-20px;
content:””;
display:block;
left:30px;
position:absolute;
width:0;
}
下向き
.demo06 {
padding: 20px;
margin-bottom:10px;
background-color: #ddd;
position:relative;
}
.demo06:after {
border:20px solid transparent;
border-top-color:#ddd;
border-bottom-width:0;
bottom:-20px;
content:””;
display:block;
left:30px;
position:absolute;
width:0;
}
右向き
.demo07 {
padding: 20px;
margin-bottom:10px;
background-color: #ddd;
position:relative;
}
.demo07:after {
border:20px solid transparent;
border-left-color:#ddd;
border-right-width:0;
right:-20px;
content:””;
display:block;
top:30px;
position:absolute;
width:0;
}
左向き
.demo08 {
padding: 20px;
margin-bottom:10px;
background-color: #ddd;
position:relative;
}
.demo08:after {
border:20px solid transparent;
border-right-color:#ddd;
border-left-width:0;
left:-20px;
content:””;
display:block;
top:30px;
position:absolute;
width:0;
}

今回は枠無しバージョンをご紹介致しました。
近いうちに枠有りバージョンをご紹介できたらと思います。
それだけでなく、様々な形の吹き出しを作成できますので、
それらもご紹介していきたいと思います。

これでデザインの幅やコーディングの幅が広がったかと思います。
この記事を参考に少しでも役立てていただければ幸いです。

-CSS, WEB制作

関連記事

先取り!春の色彩のトレンド

先取り!春の色彩のトレンド

こんにちは! web初心者のKです。 暖かくなってきたこの頃、みなさまいかがお過ごしでしょうか? 本日は春に先駆けて、 春色が感じられるサイトを集めてみようと思います。 まずひとつ目はこちら! htt …

中国でWEBサイトマーケティング考えてる方への 両国の大きな違い②

中国でWEBサイトマーケティング考えてる方への 両国の大きな違い②

一般的にWEBサイトを展開する場合、最初に考えることの一つにドメインの問題があります。 中国でも.comなどの一般的なドメインは.cnよりも簡単に取得可能ですが、その先にICP登録という問題があります …

【Vol.2】優れたキャッチコピーを見て、閃き力を上げよう!【映画・アニメ編】

【Vol.2】優れたキャッチコピーを見て、閃き力を上げよう!【映画・アニメ編】

目次1 冬っ子のわたくし、この暑さもう限界です2 キャッチコピー第5弾です3 優れたコピーを見てコピーの閃き力をグイグイ上げていこう! ~ 映画・アニメ編 ~3.1 キミとなら、強くなれる。3.2 ま …

知ってそうで知らないCSS3の便利な使い方【その3:box系プロパティ】

知ってそうで知らないCSS3の便利な使い方【その3:box系プロパティ】

今回はCSS3を使ったレイアウトで使えるbox系プロパティを使ってみました。 このbox系のプロパティを使えばCSS2等で使っていたfloatやtable-cellプロパティを使わずに横並びレイアウト …

デザイナーの常識!? いいデザインと悪いデザインの見分け方 その(1)

デザイナーの常識!? いいデザインと悪いデザインの見分け方 その(1)

デザイナーのAです。こんにちは。 今日はお客様の立場になって、 WEB制作における良いデザインと悪いデザインの見分け方についてご紹介できればと思います。 デザイナーにとっては、基本的なことでも、以外と …