いろいろブログカスタマイズメモ

はてなブログのカスタマイズ、書き方などのメモ、チートシートです。/※本サイトはアフィリエイトプログラムによる収益を得ています。ページ内のリンクがアフィリエイトリンクの場合があります。

シンプルなメニューバーをつけてみる


※本サイトはアフィリエイトプログラムによる収益を得ています。
 ページ内のリンクがアフィリエイトリンクの場合があります。

 各カテゴリへのシンプルなメニューバーをつけてみました。

f:id:kagerou_ts:20171024144049j:plain

 こういうやつです。

f:id:kagerou_ts:20171024144100j:plain

 ブラウザのサイズがメニューより小さくなるとスクロールに切り替わります。(主にスマホ向け)

設置方法

 ゆきひーさんの以下のスクリプトを使用させていただきました。ありがとうございます。

www.yukihy.com

 こちらのスクリプトを「デザイン > カスタマイズ > ヘッダ > タイトル下」に設置しました。

 ただ、このままだと私が確認した限りでは、スクロールバーがなんかメニュー項目に被ってしまう現象が発生してしまいました。

f:id:kagerou_ts:20171024144900j:plain

 これを解消するために、「@media screen and (max-width: 1000px)」ブロックに

    #scroll-menu {
      height: 100%;/*メニューの縦幅*/
    }

 を追加してみました。

 よってウチで使用しているコードは以下のようになります。

<!-- メニュー -->
<nav id="scroll-menu">
<ul class="scroll-menu-inner">
<li><a href='http://hatebu-memo.scriptlife.jp/'>TOP</a></li>
<li><a href='http://hatebu-memo.scriptlife.jp/archive/category/AdSense'>AdSense</a></li>
<li><a href='http://hatebu-memo.scriptlife.jp/archive/category/%E8%A8%AD%E5%AE%9A'>ブログ設定</a></li>
<li><a href='http://hatebu-memo.scriptlife.jp/archive/category/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88'>スクリプト</a></li>
</ul>
</nav>


<style>
#scroll-menu {
    height: 40px;/*メニューの縦幅*/
    background-color: #444;/*メニューの背景色*/
}
#scroll-menu .scroll-menu-inner {
    list-style-type: none;
    width: 1000px;/*メニューの横幅*/
    height: 100%;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}
#scroll-menu li {
    float: left;
    height: 100%;
}
#scroll-menu a {
    display: block;
    height: 100%;
    padding-right: 15px;
    padding-left: 15px;
    color: #fff;/*文字色*/
    font-size: 70%;
    font-weight: bold;
    text-decoration: none;
    line-height: 40px;/*メニューの縦幅*/
}
#scroll-menu a:hover {
    background-color: #555;/*マウスホバー時の背景色*/
}
@media screen and (max-width: 1000px) {/*メニューの横幅*/
    #scroll-menu {
        overflow-x: scroll;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }
    #scroll-menu {
      height: 100%;/*メニューの縦幅*/
    }
    #scroll-menu .scroll-menu-inner {
        margin: 0;
    }
}
</style>
<!-- メニューここまで -->