縦並びのCSSナビゲーションメニューのサンプルとHTMLとCSS
<nav>タグのクラスに"vmenu"を指定するだけで使えるCSSです。
カスタムプロパティ変数を使用しているので、以下の変数の値を変えるだけで自由にカスタマイズできます。
--border-color、--background-color、--hover-background-color、--text-color
<nav class="vmenu">
<ul>
<li><a href="">メニュー1</a></li>
<li><a href="">メニュー2</a></li>
<li><a href="">メニュー3</a></li>
<li><a href="">メニュー4</a></li>
</ul>
</nav>
<style>
nav.vmenu{
--border-color: #111111;
--background-color:#2C3E50;
--hover-background-color:#34495E;
--text-color:#ECF0F1;
--font-size:20px;
width:12em;
max-width:100%;
box-sizing:border-box;
font-size:var(--font-size);
}
@media (max-width: 768px) {
nav.vmenu{
font-size:calc(var(--font-size) * 18 / 20);
}
}
@media (max-width: 480px) {
nav.vmenu{
-webkit-text-size-adjust:100%;
font-size:calc(var(--font-size) * 16 / 20);
}
}
nav.vmenu>ul{
list-style:none;
margin:0;
padding:0;
border:1px solid var(--border-color);
border-radius:0.5em;
background:var(--background-color);
}
nav.vmenu>ul>li{
border-bottom:1px solid var(--border-color);
}
nav.vmenu>ul>li:last-child{
border-bottom:none;
border-radius:0 0 0.5em 0.5em;
}
nav.vmenu>ul>li:first-child{
border-radius: 0.5em 0.5em 0 0;
}
nav.vmenu>ul>li:hover{
background:var(--hover-background-color);
}
nav.vmenu>ul>li>a{
display:block;
padding:0.5em 1em;;
text-decoration:none;
color:var(--text-color);
width:auto;
position:relative;
touch-callout:none;
-webkit-touch-callout: none;
user-select: none;
-webkit-user-select:none;
-webkit-user-drag:none;
pointer-events: none;
}
nav.vmenu>ul>li>a:after{
content:">";
position:absolute;
text-align:right;
color:var(--text-color);
right:1em;
top:50%;
transform:translateY(-50%);
}
</style>
カスタムプロパティ変数を変更してカスタマイズした例
<div>
<nav class="vmenu" style="--border-color:#FCC;--background-color:#FF6B6B;--hover-background-color:#FFA07A;--text-color:#FFF;">
<ul>
<li><a href="">メニュー1</a></li>
<li><a href="">メニュー2</a></li>
<li><a href="">メニュー3</a></li>
<li><a href="">メニュー4</a></li>
</ul>
</nav>
</div>
<div>
<nav class="vmenu" style="--border-color:#CCC;--background-color:#FF6B6B;--hover-background-color:#FFA07A;--text-color:#FFF;">
<ul>
<li><a href="">メニュー1</a></li>
<li><a href="">メニュー2</a></li>
<li><a href="">メニュー3</a></li>
<li><a href="">メニュー4</a></li>
</ul>
</nav>
</div>
縦並び・横並びメニューのサンプル一覧
nav,ul,liタグとCSSを使って縦並びのメニューをつくる
CSSとJavascriptで円弧に沿った形の縦並びのメニューを作る
nav,ul,liタグとCSSを使ってカラフルなボタンの縦並びのメニューをつくる
nav,ul,liタグとCSSを使ってカラフルな縦並びのメニューをつくる
nav,ul,liタグとCSSを使って立体ボタンの縦並びのメニューをつくる
nav,ul,liタグとCSSを使って立体ボタンのカラフルな縦並びのメニューをつくる
nav,ul,liタグとCSSを使って横並びのメニューをつくる
CSSでSVGアイコンを下部に固定した横並びのメニューがあるページ作る
nav,ul,liタグとCSSを使ってサブメニューがある横並びのメニューをつくる
