タブを作ろうと思いましたが検索しても CSS のみで実現しているサンプルが見つからなかったので、自作してここに置いておきます。Web 上を探してみると意外に CSS のみで作ったタブが少なそうなイメージがありました。
HTML
1 2 3 4 5 6 | <ul class="tab clear"> <li class="none"><a href="#" class="blue">タブ1</a></li> <li><a href="#" class="red">タブ2</a></li> <li><a href="#" class="green">タブ3</a></li> <li><a href="#" class="yellow">タブ4</a></li> </ul> |
CSS
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | ul.tab { margin: 0; padding: 0; border-bottom: 2px #ddd solid; } ul.tab li { float: left; margin: 0 0 0 5px; position: relative; bottom: -2px; list-style-type: none; border: 1px #ddd solid; border-top: none; border-bottom: 2px #ddd solid; } ul.tab li.none { border-bottom: 2px #fff solid; font-weight: bold; } ul.tab li a { color: #000; display: block; padding: 3px 10px 5px; text-decoration: none; background: #fff; } ul.tab li a.blue { border-top: 5px #2384dc solid; } ul.tab li a.green { border-top: 5px #4cbb47 solid; } ul.tab li a.red { border-top: 5px #dd1d25 solid; } ul.tab li a.yellow { border-top: 5px #ffd242 solid; } ul.tab li a:hover { position: relative; bottom: 6px; } /* clerfix */ .clear:after { content:""; display:block; overflow:hidden; } .clear:after { clear:both; } .clear { zoom:1; } |


コメント