SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CSSで作るWeb用パーツ

デザインサンプルで学ぶCSSによるスタイリング~「見出し」編

CSSで作るWeb用パーツ(1)

  • X ポスト
  • このエントリーをはてなブックマークに追加

折れリボン風見出し

 サンプル9のような折れリボン風の見出しは、左下の三角形を:before擬似要素で、右下の三角形を:after擬似要素で作って実装しています。左下の三角形は:before擬似要素で作った空の要素に5px幅のボーダーを指定し、border-topとborder-rightのみ色をつけて直角三角形を作っています。

図14:border-topとborder-rightのみ色を付けて左下の直角三角形を描く
図14:border-topとborder-rightのみ色を付けて左下の直角三角形を描く

 同様に右下の三角形は、:after擬似要素で空の要素を作り、border-topとborder-leftのみ色をつけて直角三角形を作っています。後は、これまで同様positionレイアウトで微調整をするだけです。

サンプル9/CSS(sample02.html)
#sample09 {
  margin: 0 -10px 30px -10px;
  padding: 10px 20px;
  font-size: 130%;
  color: #333333;
  background-color: #FFCCCC;
  position: relative;
}
#sample09:before{
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent;
  border-top-color: #FF9999;
  border-right-color: #FF9999;
}
#sample09:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  width: 0;
  height: 0;
  border-width: 5px;
  border-style: solid;
  border-color: transparent;
  border-top-color: #FF9999;
  border-left-color: #FF9999;
}
図15:サンプル9(sample02.html)
図15:サンプル9(sample02.html)

カットリボン

 サンプル10では、:after擬似要素で作った空の要素に、20px幅のボーダーを指定し、右ボーダーのみtransparent(透明)を指定して、リボンをカットしたような表現をしています。

図16:border-rightのみ透明にしてカットリボンを描く
図16:border-rightのみ透明にしてカットリボンを描く
サンプル10/CSS(sample02.html)
/* サンプル10:カットリボン風デザインの見出し */
#sample10 {
  margin: 0 0 30px -10px;
  padding: 10px 20px;
  color: #333333;
  background-color: #FFCCCC;
  position: relative;
  font-size: 20px; /* 文字サイズを20px */
  line-height: 1; /* 行間を1 */
}
~中略~
#sample10:after {
  content: "";
  position: absolute;
  top: 0;
  right: -40px;
  height: 0;
  width: 0;
  border: 20px solid #FFCCCC;
  border-right-color: transparent;
}

図17:サンプル10(sample02.html)
図17:サンプル10(sample02.html)

 以上、borderで三角形を描く仕組みが分かってしまえば、アイデア次第で立体的で面白い表現が可能になります。いろいろと試してみてください。

まとめ

 本記事では、border関連プロパティやbackground関連プロパティ、擬似要素を使った、見出しのスタイリング方法を紹介しました。見出しだけではなく、いろいろなボックスに応用できるので、ぜひチャレンジしてみてください。

 次回は、リストでマークアップしたナビゲーションを、ボタン風にスタイリングしたり、横並びにスタイリングしたりする方法を紹介します。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
CSSで作るWeb用パーツ連載記事一覧

もっと読む

この記事の著者

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるReact実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

WINGSプロジェクト 宮本麻矢(ミヤモト マヤ)

WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS Twitter: @yyamada(公式)、@yyamada/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/7681 2014/04/03 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング