0

ここに私のウェブサイトがあります: http://gyazo.com/56e069ebf8b5bd61ee30523886180b88

ナビゲーション バーには多くの問題があります。

  1. ホバーによって示されるように、テキストまたはナビゲーション バーが水平方向の中央に配置されていないことがわかります (上下で同じです)。

  2. テキスト間のスペースが多すぎます (このスペースは、強調表示またはホバリング時にテキストが動き回らずに機能することがわかった唯一の方法です。

  3. ドロップダウン メニューの <.br> の間隔が広すぎます。

1.の場合、テキストまたはナビゲーションバー(原因がわからない)を中央に配置して、ホバーがより均等に(水平に)見えるようにする方法はありますか

2.同じパディング設定を維持しながら、テキスト間のギャップを埋める方法はありますか?ホバー機能を使用してもテキストが移動しません。

そして3. <.br> に現在使用しているスペースの半分を持たせる方法はありますか

それが役立つ場合は、jsfiddleも追加しました:http://jsfiddle.net/d1a5eshs/

ナビゲーション バーの HTML コード:

<!--TOP NAV BAR SECTION-->
            <div id="nav_bar">
                <ul>
                    <li><a href="index.html">HOME</a>
                    </li>
                    <li><a href="status.html">STATUS</a>
                    </li>
                    <li><a href="info.html">INFO</a>
                    </li>
                    <li><a href="#">GAMEMODES</a>

                        <ul>
                            <li><a href="survival.html">SURVIVAL</a>
                            </li>
                            <li><br><a href="pure-pvp.html">PURE-PVP</a>
                            </li>
                            <li><br><a href="gamesworld.html">GAMESWORLD</a>
                            </li>
                        </ul>
                    </li>
                    <li><a href="rules.html">RULES</a>

                    </li>
                    <li><a href="vote.html">VOTE</a>

                    </li>
                    <li><a href="contact.html">CONTACT</a>

                    </li>
                </ul>
            </div>

ナビゲーション バーの CSS は次のとおりです。

/*TOP NAV BAR SECTION*/
#nav_bar {
    background-color: #a22b2f;
    padding:1px;
    box-shadow: 0px 2px 10px;
    height:45px;
    }         
#nav_bar ul li {
    display: inline-block;    
}
#nav_bar ul li a {
    color: white;
    text-decoration:none;
    font-weight:bold;
    font-size:15px;
    margin-left:10px;
    padding-bottom:13px;
    padding-top:17px;
    padding-left:10px;
    padding-right:10px;
    margin-bottom:30px;
}
#nav_bar ul li ul {
    display: none;   
}
#nav_bar>ul>li>a:hover {
    background:#8c1b1f;
    padding-bottom:13px;
    padding-top:13px;
    padding-left:10px;
    padding-right:10px;   
}
#nav_bar>ul>li>ul>li>a:hover {
    background:#c9c9c9;
    padding-bottom:5px;
    padding-top:5px;
    padding-left:5px;
    padding-right:5px;      
}
#nav_bar ul li:hover ul {
    display: block;
    position: absolute;
    padding: 0px;
    background: #e2e2e2;
    padding-top:10px;
    padding-bottom:10px;
    padding-left:0px;
    padding-right:10px;
    border: 1px solid black;
    border-radius:5px;
}
#nav_bar ul li:hover ul li {
    display: block;

}
#nav_bar ul li:hover ul li a {
    color: black;
    font-size:12px;
    font-weight:bol;
    margin-left:-20px;
    padding-bottom:5px;
    padding-top:5px;
    padding-left:5px;
    padding-right:5px;
}
4

1 に答える 1

0


内部リストでを使用する必要はありません。目的の結果が得られるように行の高さを調整します。 http://www.jsfiddle.net/9058vefk

 #nav_bar ul li:hover ul {
  display: block;
  position: absolute;
  padding: 0px;
  background: #e2e2e2;
  padding-top:10px;
  padding-bottom:10px;
  padding-left:10px;
  padding-right:10px;
  border: 1px solid black;
  border-radius:5px;
  line-height:1.5em; /* added this- you can change it th=o what you want */
  height:5em;
}

メインの ul li を中央に配置する限り、div (nav_bar) 全体を 7 つの等しい小さな div に分割し、そのスペースを各 nav アイテムに適用します。

于 2014-10-24T20:43:51.607 に答える