知っておくと便利なcssの小技 part9

  • はてブ

こんにちは、工藤です。
今回は個人的に知っておくと便利だなと思うcssの小技part9です。

バックナンバー



ナビをhoverしたときに、中央から線を出す

img01

ナビなどをhoverしたときに、テキスト下部の中央から線が表示されるあれです。
なんとなくおしゃれになります。
ソースは一見複雑そうですが、登録しておけばちょっとだけ値などを変えるだけで簡単に実装できます。

DEMO

HTML


CSS


装飾自体はaタグに行っていきます。

14行目

このあとabsoluteを使うので、aタグに『position: relative;』を設定しておきます。


16行目

aタグの『::after』に設定していきます。『::after』用の『content: “”;』を忘れずに。


18~25行目

ここはラインの設定です。
まずは『absolute』でaタグ内の好きな位置に置けるように設定します。
次に『background』などで色の指定をします。borderを使うわけではないのでテクスチャを使ったラインなども引けます。
20~25行目でラインの大きさ、位置を調整しています。
『left: 0』;と『right: 0;』、『margin: 0 auto;』で中央配置にしているのは、今回『width: 50%;』にしてラインの長さを短くしたためです。
例えば『width: 100%;』にした場合にはleftとbottomのみでの位置設定で大丈夫です。
あとは『height』で好きな高さを設定するのも忘れずに。


26~28行目

『transform』でhoverしていない時のラインのサイズを設定します。
hoverしていない時は何も見えていない状態なので『0』を指定します。


29~31行目

『transition』でスピードの設定をします。


33行目~

hoverしたときの設定なので、26~28行目で0にした『transform』の値を『1』にします。
これでhover時に中央から線が出てくるナビの完成です。

ちなみに34行目の『ul.naviList li.now a::after』は開いているページに対して、線をそのまま引いておきたい時の記述です。
いらない場合は取ってしまってください。


style="display:block"
data-ad-client="ca-pub-4667789978705365"
data-ad-slot="9480048027"
data-ad-format="auto">



背景を固定する

img02

パララックス(のような)サイトで見られる、スクロールしたときに背景が固定されているあれです。
数行の記述で実現できます。

DEMO

HTML


CSS


3行目

背景画像を設定します。この時『background-size:』『cover』等を設定します。


4行目

背景固定用のcssの『background-attachment: fixed;』を設定します。
これだけで簡単に背景固定ができます。

工藤

執筆者: 工藤

日々勉強中です。どうぞよろしくお願いします。

株式会社8bit (エイトビット)

東京都渋谷区でWebサイト制作、Webシステム開発などを行っております。
キャンペーンサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

制作に関するご相談はお気軽にどうぞ

コンペ参加や相談ベースでもご相談承っております。

お問い合わせ