スキナモノート

SEOやマーケティング、WEB系に役立つ情報を発信しています。好きな事を中心に、文房具の記事もたまに。

【はてなブログカスタマイズ】ドロップダウンメニューを付けてみた。

はじめに

今回、スキナモノートにドロップダウンメニューを付けてみました。表示にはCSSのみ使用しています。
まだ、シンプルですが、なかなか気にいっています。この先使用するか分からないのですが、テストも兼ねて。
カスタマイズはしないしないと言っていたのにいけませんね(笑)
一応、記事のネタとして、と言い訳をしつつ、進行していきます。

ドロップダウンメニューとは。

f:id:tubamenote:20150322134944p:plain
マウスオーバーすると、こんな感じに下にメニューが出てくる感じです。リンク先は手動で入れるしかないので面倒な部分もありますが、こういうメニューを使いたかった、という方のご参考になればと思い、記事にしてみました。
簡単ですが、少し説明をさせていただきます。
まずはコード全文から。

ダッシュボード>デザイン>カスタマイズ>ヘッダ>タイトル下
の部分に張り付けをします。

HTML

<nav>
  <ul id="globalmenu">
    <li><a href="#">メニュー1</a>
      <ul>
        <li><a href="#">メニュー1の子1</a></li>
        <li><a href="#">メニュー1の子2</a></li>
        <li><a href="#">メニュー1の子3</a></li>
      </ul>
    </li>
    <li><a href="#">メニュー2</a>
       <ul>
         <li><a href="#">メニュー2の子1</a></li>
         <li><a href="#">メニュー2の子2</a></li>
         <li><a href="#">メニュー2の子3</a></li>
         <li><a href="#">メニュー2の子4</a></li>
       </ul>
     </li>
     <li><a href="#">メニュー3</a>
       <ul>
         <li><a href="#">メニュー3の子1</a></li>
       </ul>
     </li>
     <li><a href="#">メニュー4</a>
       <ul>
         <li><a href="#">メニュー4の子1</a></li>
       </ul>
     </li>
   </ul>
</nav>

CSS

次にCSSです。
ダッシュボード>デザイン>カスタマイズ>カスタムCSS
の部分に張り付けをします。

#globalmenu{
  width: 100%;
  margin: 0 auto 40px;
  height: 50px;
  padding: 0;
  list-style-type: none;
  background: #fff;
  border-top: 1px solid #000;  
  border-bottom: 1px solid #000;
}
#globalmenu li{
  position: relative;
  float: left;
  text-align: center;
  width: 25%;
  margin: 0;
  padding: 0;
}
#globalmenu li a{
  display: block;
  margin: 0;
  padding: 17px 0 20px;
  color: #000;
  font-size: 15px;
  text-decoration: none;
}
#globalmenu li:hover > a{
  background: #ccc;
  color: #fff;
}
#globalmenu li ul{
  position: absolute;
  top: 100%;
  color: #fff;
  left: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  z-index:10000;
}
#globalmenu li ul li{
  overflow: hidden;
  width: 100%;
  height: 0;
  color: #fff;
}
#globalmenu li ul li:hover > a{
  background: #EDA47C;
  color: #fff;
}
#globalmenu li:hover ul li{
  overflow: hidden;
  height: 40px;
  border-bottom: 1px dotted #ffffff;
}
#globalmenu li ul li a{
  font-size: 13px;
  padding: 15px;
  background: #ddd;
  text-align: left;
}

HTMLの説明

HTMLやCSSに慣れていない人の為に、ざっと簡単な説明をしておきます。
まずはHTMLから

<nav>
  <ul id="globalmenu">
    <li><a href="#">メニュー1</a>
      <ul>
        <li><a href="#">メニュー1の子1</a></li>
        <li><a href="#">メニュー1の子2</a></li>
        <li><a href="#">メニュー1の子3</a></li>
      </ul>
    </li>

上記のソースの、メニュー1という部分が、グローバルメニューに表示される部分です。私のブログでいう、「トップ はてなブログ ペンケース モノ 」という部分ですね。
そして、メニュー1の子1、2、3は、マウスオーバーした時に表示されるメニューです。a href="#"の#の部分にリンクするURLを入れます。メニュー2、3、4も同様です。

CSSの説明

次にCSSですが、

#globalmenu{
  width: 100%;
  margin: 0 auto 40px;
  height: 50px;
  padding: 0;
  list-style-type: none;
  background: #fff;
  border-top: 1px solid #000;  
  border-bottom: 1px solid #000;
}
#globalmenu li{
  position: relative;
  float: left;
  text-align: center;
  width: 25%;
  margin: 0;
  padding: 0;
}

globalmenuのbackground #fffで背景の色を指定します。私の場合は白なので、#fffです。
globalmenu liの width25%は各メニューの幅を決めています。
私の場合、4つのメニューを表示させているので、各25%の幅。4×25%=100%
もしも、5つのメニューを表示させる場合は、20%に変更して合計が100%になるようにして下さい。

次に、色の変更部分だけピックアップしてみます。

#globalmenu li:hover > a{
  background: #ccc;
  color: #fff;
}
#globalmenu li ul li:hover > a{
  background: #EDA47C;
  color: #fff;
}
#globalmenu li ul li a{
  font-size: 13px;
  padding: 15px;
  background: #ddd;
  text-align: center;
}

globalmenu li:hover > a{ background:#cccはグローバルメニューにマウスオーバーした時に色です。
globalmenu li ul li:hover > a{  background #EDA47Cは子メニューにマウスオーバーした時の色です。
globalmenu li ul li a{  background: #dddは子メニューの色です。

最後に

こんな風にいじっていくと、オリジナルのドロップダウンメニューが作れます。
コードは公開していますが、ご利用は自己責任でお願いしますね。
カスタマイズをする時にはバックアップをお忘れなく。

(追記)また、コメントでご指摘をいただきましたが、ドロップしたメニューがAdSenseの広告にかぶらないように注意をしましょう。私自身も初歩的な事を見落としておりました。

以上、はてなブログにドロップダウンメニューを付けてみた。でした。
最後までお読みいただきありがとうございます。感謝

関連記事