スマホサイトの矢印付きメニューをCSSのみで実装する。

スマホサイトの矢印付きメニューをCSSのみで実装する。

こんにちは
もうすぐ待ちにまったGWですね。今年は、多い人で11連休とかあるんじゃないでしょうか。そんなことしたら…もう、社会復帰できる自信がないmackyです。

さて、
そんな今日は、スマホサイトのメニューの定番デザインである、
矢印付きメニューをcssのみで実装してみようと思います。

CSSのみで実装する定番の矢印つきメニュー

こんな感じです。

20140415_fujimori_0.jpg

まずはHTMLを用意します。

HTML

<ul>
<li><a href="#">シーブレイン七不思議</a></li>
<li><a href="#">シーブレインあるある</a></li>
<li><a href="#">シーブレイン3つの掟</a></li>
<li><a href="#">minamiが行く横浜うまいもの日記</a></li>
</ul>

css

* { margin: 0; padding: 0;
}

a {
display: block;
position: relative;
padding: 10px 25px 10px 10px;
border-bottom: 1px solid #D9D9D6;
background: #FFF;
color: #0C0;
font-size: 14px;
font-weight: bold;
text-decoration: none;
}

a:after {
display: block;
content: "";
position: absolute;
top: 50%;
right: 10px;
width: 6px;
height: 6px;
margin: -4px 0 0 0;
border-top: solid 2px #093;
border-right: solid 2px #093;
-webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}

:afterを使用して6px×6pxの疑似要素をつくり、border-topとborder-rightで直角をつくり、それを45°回転させています。

次は意外と多いデザイン右向き三角矢印をやってみます。

CSSのみで実装する右向き三角矢印つきメニュー

こんな感じです。

20140415_fujimori_1.jpg

※htmlは同じです。

css

* { margin: 0; padding: 0;
}

a {
display: block;
position: relative;
padding: 10px 25px 10px 10px;
border-bottom: 1px solid #D9D9D6;
background: #FFF;
color: #0C0;
font-size: 14px;
font-weight: bold;
text-decoration: none;
}

a:after {
display: block;
content: "";
position: absolute;
top: 50%;
right: 10px;
width: 0;
height: 0;
margin: -3px 0 0 0;
border-top: 8px solid #0c0;
border-left: 8px solid transparent;
-webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}

まとめ

覚えておくとスマホのメニュー欄やブログの記事一覧、など使い勝手がよさそうですよね。
まだつかったことなーいという方は是非、挑戦してみてください^^

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

この記事を読んだ人にオススメ