WordPressナビゲーションメニューのカスタマイズ

WordPressナビゲーションメニューのカスタマイズWordPressの始め方や使い方まとめ

今回はWordPressのナビゲーションのメニュー部分をカスタマイズとしていきます。具体的にはメニュー部分の色や高さ、文字の大きさと色、それから背景色などを変更していきます。

また、リクエストの多かった、「ナビゲーションメニューを均等に配置する方法」や「サブメニューのカスタマイズ」も紹介していきます。基本的なナビゲーションメニューの設定などは別記事です。

WordPressのナビゲーションメニューの使い方と設定

メニュー部分というのは最初このようになっていると思います。

メニュー部分-1

私の場合はこのナビメニューの高さを低くして背景色と文字色を変更しています。

メニュー部分-2

ナビゲーションメニューのカスタマイズ

私の利用しているTwentyTwelveで説明していきます。子テーマで作成したスタイルシート (style.css)を使います。私の変更箇所のコードはこのようになっています。

/* ナビメニュー */
.main-navigation li a {
color: #fff; /* 文字色(白) */
font-weight:bold; /* 太字にして */
line-height: 25px; /* 高さ */
font-size: 15px;} /* 文字の大きさ */

.main-navigation ul {
margin: 0; /* 余白をなくす */
background: #1F5E73; /* 背景色 */
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}

この各項目の好きな部分を変更して使ってみて下さい。文字の左に余白が欲しい場合(右にずらしたい場合)には「padding-left: ●●px;」を追加して下さい。

それからリンクのカスタマイズでも解説しましたが、カーソルが乗った時の色と訪問済みの色を指定する事ができますので、これも設定しておくといいでしょう。

.main-navigation li a:visited {color: #fff;}
.main-navigation li a:hover{color: #7a8285;}

「a:visited」が訪問済みの色で「a:hover」がカーソルを載せた時の色です。それぞれ設定しておきましょう。

ナビゲーションのメニューを均等に並べる方法

ナビゲーションのメニューは通常は「左揃え」のような状態になっているので、右側に余白ができてしまう場合があります。こんな感じです。

均等-1

なので、メニューに設置した項目を均等に並べるようにしていきます。テーマTwenty Twelveでのサンプルですが子テーマのスタイルシートに次のコードを追加して下さい。

@media screen and (min-width: 960px) {
.main-navigation ul.nav-menu {
 display: table !important;
 table-layout: fixed;
 text-align: center;
 width: 100%;}

 .main-navigation li {
 display: table-cell;
 vertical-align: middle;}
}

ulには「display:table」、liには「display:table-cell」を指定する事で均等にする事ができますので試して見て下さい。

サブメニューをカスタマイズする場合

このWordPressのメニューナビにサブアイテム(サブメニュー)を設置している方もいるかと思います。WordPressの管理画面から「外観」⇒「メニュー」と進んでメニューを右にずらしてみるとサブメニューになります。

サブメニュー-2

これで保存して確認するとサブメニューこんな感じに縦に開きます。

サブメニュー-1

このサブメニューのカスタマイズも一緒にやってしまいましょう。スタイルシートに次のコードを追加するだけ。

/* ナビゲーションサブメニュ- */
ul.sub-menu li a{
color:#fff !important;  /* サブメニュー文字色 */
background-color:#1F5E73 !important;  /* サブメニューの背景色 */
font-size:12px !important;  /* 文字の大きさ */
font-weight:bold !important;  /* 文字を太字に */
}
 
ul.sub-menu li {
margin-right:0px !important; /* サブメニューの右の余白を0に */
}

後はカラーや文字の大きさを自分好みに変更して利用して下さい。

以上WordPressナビゲーションメニューのカスタマイズでした。

コメント

  1. しげぞう より:

    Okinagatarashi様

    まだ返信できた(笑)「!important」を追加して以下でどうですか?こちらも試してみてください。

    header {
        border: 2px solid #c8d5bb !important;
    }
  2. Okinagatarashi より:

    しげぞう様
    ごめんなさい。お久しぶりです。ありがとうございます。
    今までのデータ削除で案外へこたれ見たいで全く進みません。
    どうにか好きなところから始めています!

    ダメでした・・・

    現在、頂いたコードを書いたままになっています。
    時にPCおとすと動く時あるから・・・

    毎度、ご迷惑をお掛けします・・・
    ごめんなさい。私も週末はあれこれで
    覗けない事も多いので来週で全く構いません。
    ご面倒をお掛けします。宜しくお願いします。

  3. しげぞう より:

    Okinagatarashi様

    お久しぶりです!再チャレンジですね!以下のコードの追加試してみて下さい。スタイルシート(CSS)です。

    header {
        border: 2px solid #c8d5bb;
    }

    一応スマホなどでも確認する必要があると思います。スマホでデザインが崩れたりするなら条件分岐が必要になります。

    もし上手く行かない場合はまたコメント下さい。ただ返信は来週になるかもしれません。

  4. Okinagatarashi より:

    しげぞう様
    こんにちは!いつ見ても細やかなやりとりに脱帽します。
    ポンコツ也のチャレンジではどうしても上手くいかない事が
    出来たので出来ればご教授下さい。

    ナビゲーションメニューだけが上手く変更できないです。
    何度かチャレンジしてコードを書いてみると分割してしまいます。
    ボックスがあって入れ子になってるみたいな感じで
    サイトタイトル メニューの2つのボックスが大きいボックスの中にあるのか
    大きいボックスが分かりません・・・

    下の「Current Japan Time」や左側サイドバーの「Recent posts」等とデザインを揃えたいのですがどうしたらいいか分りません。
    ちっらと見て頂けますと幸せます。 

  5. より:

    しげぞう様

    返信ありがとうございます。早速試してみたところ、無事左詰めにすることができました!

    最初貼り付けたときは反応しなかったのですが、!importantをつけたら上手くいきました。以前しげぞう様に教えていただいた知識が役に立ってよかったです。

    最近やっと報酬も発生するようになってきたので、これからもっと頑張っていこうと思います。

    また何かあれば質問させていただきますね。お忙しい中本当にありがとうございましたm(__)m

  6. しげぞう より:

    翔様

    コメントありがとうございます。スマホだけ余白を左に詰める対応させるという事なので条件分岐が必要です。元々PCで余白がないのであれば条件分岐しなくてもOKかもしれませんが、一応条件分岐入れときます。

    @media screen and (max-width: 500px) {
    .article ul {
      padding-left: 0px;
    }
    }

    ブラウザサイズ500px以下(スマホ)の場合に「article ul」の左余白を0pxにする感じです。条件分岐も閉じるので最後の閉じタグ「 } 」は2つです。上記で反映されるか確認をお願いします。

    CSSの知識が付いてきたらブラウザのデベロッパーツールを使うと自分であれこれチェックできます。

タイトルとURLをコピーしました