Webデザイナーを目指す人のブログ

Webサイト作成時に勉強したことの備忘録

CSS サイト構築

CSS応用編 vol.02

投稿日:2017年5月16日 更新日:

                                                                                                                                 

CSSで吹き出しをつくる

前回こちらの記事で三角形をを作る方法をみていきました。
今日はその三角形を使って吹き出しを作っていく方法をみていきます。

ベタ塗りの吹き出しをつくる

吹き出しは四角形と三角形を合わせてつくります。

を組み合わせることで

吹き出しを作ることができます。

では早速作り方を見ていきましょう。

長方形のcssはこのように指定しています。

.box {
	position: relative;
	width: 200px;
	height: 100px;
	background: #ccc;
}

ふきだしの下の三角形はboxにbefore疑似要素で指定します。

.box:before {
	content: "";
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px;
	border-color: #ccc transparent transparent transparent;
	positon:absolute;
	right:20px;
	bottom:-19px;
}

ポイントは.boxをposition:relative;に、before要素はposition:absolute;にすることです。
rightとbottomを指定して場所を決めます。

縁取られた吹き出しをつくる

次はベタ塗りではなく、縁取られた吹き出しを作っていきます。
長方形のcssはこのように指定しています。

.box {
	position: relative;
	width: 200px;
	height: 100px;
	border:2px solid #ccc
}

塗りつぶしをなくしてborderを設定しました。

次に吹き出しの三角形です。
長方形ではbackground-colorが指定できましたが、
三角形を作っているのはborderです。
border自体の色を指定することはできますが、borderの境界線の色は指定出来ません。
そのためafter要素を指定して1pxだけ上にずらして作ります。
after要素はbefore要素の上にくる仕様なので縁取られたように見える三角形ができます。

.box:before {
	content: "";
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px;
	border-color: #ccc transparent transparent transparent;
	positon:absolute;
	right:20px;
	bottom:-20px;
}

.box:after {
	content: "";
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px;
	border-color: #fff transparent transparent transparent;
	positon:absolute;
	right:20px;
	bottom:-18px;
}

そうすると

このように縁取られた吹き出しになります。

before要素とafter要素をうまく使うことで吹き出しだけじゃなくリボンなど様々な形をcssで作ることができます。
画像を使わずにCSSで色々な形を作れるようになると細かな調整がしやすくなります。
デザインを見てCSSでできるかもと思ったら一度チャレンジしてみましょう。

-CSS, サイト構築

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

WordPress オリジナルテーマを作る〜ヘッダーその2〜

前回から始めたWordPressのサイト作り 今回はヘッダーのレスポンシブ部分を作りました。 前回の記事はこちらから WordPress オリジナルテーマを作る〜ヘッダー〜 プラグインを使わずにハンバ …

no image

CSSレイアウト vol.01

今回からはレイアウトを整えていく方法について勉強した内容をまとめていきます。 reset.cssとnormalize.css WEBの勉強を始めた当初、htmlとcssを用意してブラウザに反映させてみ …

no image

ファビコンを設定する

今日はファビコンの設定方法について書いていきます。 ファビコンとは ファビコンとはウェブサイトを開いた時のタブについているアイコンのことです。 ファビコンを設定しているとこのように表示され、いくつかタ …

no image

【Javascript】コンソールとは何か?

今回からJavascriptについて勉強したことを書いていきます。 はじめに言っておきますがJavascriptが必要なときは今までほとんどコピペで過ごしてきました。 苦手意識があり、本当に初心者です …

WordPress オリジナルテーマ ウィジェットを追加する

オリジナルテーマを作っていて、ウィジェットが出てこなかったのでその解決方法。 functions.phpに以下のソースを追加するとwordpress管理画面>外観の中にウィジェットが表示されるようにな …