[CSS] フォームや登録の進み具合をCSSだけで表現する方法

公開日: : CSS, Web制作 , ,

フォームや登録過程で、今どれくらい進んでいるのか利用者に対して表示する事はとても重要な事だと思います。

そんな、進行状況をCSSのみで表現する方法を紹介します。

スクリーンショット 2014-08-31 22.13.38

構造は非常に単純

まず、HTMLですが、とても単純です。

<div class="bar active"></div>
<div class="bar active"></div>
<div class="bar"></div>

これだけです。クラスのactiveが付いた箇所は既に通った箇所、もしくは現在地です。

そして、CSSですが、これもそれほど難しいものではありません。

body {
  background: gray;
}

.bar {
  border-radius: 1em 0 0 1em;
  background: #fff;
  height: 1em;
  width: 20%;
  margin: 1em;
  border: .5em solid #fff;
  border-right: 0;
  position: relative;
  float: left;
}

.bar + .bar {
  border-radius: 0;
  border-left: 0;
  margin-left: 1.25em;
  z-index: -2;
}

.bar + .active.bar {
  z-index: auto;
}

.bar:after {
  content: '';
  display: block;
  width: 2.5em;
  position: absolute;
  right: -2.9em;
  top: -1.25em;
  height: 2.5em;
  border: .5em solid #fff;
  background: #fff;
  border-radius: 50%;
  z-index: -1;
}

.active.bar,
.active.bar:after {
  background: orange;
}

これだけです。

構造を少し解説します。

まず、.barで角丸のバーを作ります。そして、その下の .bar + .bar という隣接セレクタで次の.barの角丸をなくしています。
あとは、:afterで丸のポイントを作っています。

サンプルを作りましたので、よかったらご覧ください。

まとめ

CSSを駆使して非常に簡単に表現されているいい例です。
javascriptと合わせれば、フォームがユーザーにとって使いやすいものになるでしょう。

ad

関連記事

[jQuery] FlickerPlateを紹介します。

かっこいいプラグインで、フリックにも対応します。 Flickerplateは、シンプルでとても使い

記事を読む

[jQuery] フルサイズ(ブラウザいっぱい)で画像を表示するlightbox風プラグインの紹介 [ギャラリーサイト向け]

jQuery fullsizable plugin ブラウザ画面いっぱいに画像を表示したい時に使え

記事を読む

[javascript] Google Maps javascript API v3の使い方(基本編)

Google Maps javaScript API v3とは Google Maps API V

記事を読む

[jQuery] OSX風のスクロールバーにするプラグイン!

trackpad-scroll-emulator trackpad-scroll-emulator

記事を読む

[CSS] メディアクエリ(Media Queries)を考える

Media Queriesとは Media Queriesとは、画面環境に応じてCSSの適用範囲を

記事を読む

[Dreamweaver] 便利な検索&置換

Dreamweaverの検索&置換は、便利な機能が満載! サイトを制作する上で厄介になってくるのが

記事を読む

[CSS]印刷用CSSの設定方法

印刷用のCSSは、設定が簡単! 普通にサイトを作っていると、結構印刷用のCSSの設定もお願いされま

記事を読む

[CSS] clearfixの使い方を考える

現在のclearfix 以前は、IE6に対応させるためにソースがちょっと多かったですが、現在はかな

記事を読む

[html5] おさらいがてらWordPressのテーマを作るためにHTML5で一から作るよ![第3回]

ブログの存在すら忘れてました、僕です。 完全放置プレイだったこの連載?を再開しなきゃと思い、重

記事を読む

[Dreamweaver] テンプレートの入れ子

テンプレートは入れ子に出来る! Dreamweaverのテンプレートは、ベースを作り、さらにそのベ

記事を読む

ad

Message

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

ad

[PHP] curl転送してみる(googleに)

curlでgoogle画像検索APIにアクセスしてみます。 cu

[PHP] PDOでMySQLの接続確認をする

PDO PHPでMySQLに接続する際には、mysql_connec

[PHP] ランダムな英数字を生成する

便利系メソッド 今回はPHPでランダムな英数字を作成してみます。

[Swift] プロパティリスト(plist)の値を取得

plistからデータを取得してみます。 こちらのエントリーも参考にし

[Swift] Asset Catalogについて

XCode5から追加されたAsset Catalog。 いままで標準

→もっと見る

  • 1978年の七夕生まれ。 25才でweb業界の門を叩き、28才でフリーランスに。 現在は、フリーランスでマークアップ中心に、wordpressのカスタマイズやデザインをしております。 また、iPhoneアプリの開発もしております。
PAGE TOP ↑