2017-09-28 66 views
-2

私はナビゲーションバーを作成しました。 私は、ナビゲーションバーに(同じサイズの)リスト項目を集中させようとしています。そして、シム時には、それは敏感でなければなりません。最初に私は解決策を見つけるためにインターネットで検索しました。しかし、私はまだ解決策を見つけていません。私は詰め物を試してみた。しかし、私は成功しませんでした。誰か助けてくれますか?リストアイテムを水平ナビゲーションバーの中央に配置するにはどうすればいいですか?

.navigationbar ul { 
 
    overflow: hidden; 
 
} 
 

 
.navigationbar { 
 
    width: 100%; 
 
} 
 

 
ul { 
 
    width: 50%; 
 
    list-style-type: none; 
 
    margin: 0; 
 
    padding-left: 25%; 
 
    padding-right: 25%; 
 
    overflow: hidden; 
 
    background-color: #FF5800; 
 
} 
 

 
li { 
 
    width: 10%; 
 
    margin-right: auto; 
 
    margin-left: auto; 
 
    float: left; 
 
    text-align: center; 
 
} 
 

 
li a, 
 
.dropbtn { 
 
    width: 10%; 
 
    display: block; 
 
    text-align: center; 
 
    color: white; 
 
    padding: 14px 21px; 
 
    text-decoration: none; 
 
    font-family: Verdana 
 
} 
 

 
li a:hover, 
 
.dropdown:hover .dropbtn { 
 
    background-color: red; 
 
    color: white; 
 
    transition: background-color 0.8s, color 0.8s; 
 
} 
 

 
li .active { 
 
    background-color: red; 
 
    margin: 0; 
 
} 
 

 
li.dropdown { 
 
    display: inline-block; 
 
} 
 

 
.dropdown-content { 
 
    display: none; 
 
    position: absolute; 
 
    background-color: #f9f9f9; 
 
    width: 154px; 
 
    z-index: 1; 
 
} 
 

 
.dropdown-content a { 
 
    color: black; 
 
    text-decoration: none; 
 
    display: block; 
 
} 
 

 
.dropdown-content a:hover { 
 
    background-color: red; 
 
} 
 

 
.dropdown:hover .dropdown-content { 
 
    display: block; 
 
}
<header class="header"> 
 
    <div class="logo2"> 
 
    <img class="logo" src="afbeeldingen/rijnijssel-logo.jpg"> 
 
    </div> 
 
    <div class="navigationbar"> 
 
    <ul> 
 
     <li><a class="active" href="page1.html">page1</a></li> 
 
     <li class="dropdown"> 
 
     <a href="#" class="dropbtn">dropdown</a> 
 
     <div class="dropdown-content"> 
 
      <a href="page2.html">page2</a> 
 
      <a href="page3.html">page3</a> 
 
      <a href="page4.html">page4</a> 
 
      <a href="page5.html">page5</a> 
 
      <a href="page6.html">page6</a> 
 
     </div> 
 
     </li> 
 
     <li><a href="page7.html">page7</a></li> 
 
     <li><a href="page8.html">page8</a></li> 
 
     <li><a href="page9.html">page9</a></li> 
 
     <li><a href="page10.html">page10</a></li> 
 
    </ul> 
 
    </div> 
 
</header>

答えて

1

https://jsfiddle.net/vrokv6kg/4/

<header class="header"> 
    <div class="logo2"> 
     <img class="logo" src="afbeeldingen/rijnijssel-logo.jpg"> 
    </div> 
    <div class="navigationbar"> 
     <ul> 
      <li><a class="active" href="page1.html">page1</a></li> 
      <li class="dropdown"> 
       <a href="#" class="dropbtn">dropdown</a> 
       <div class="dropdown-content"> 
        <a href="page2.html">page2</a> 
        <a href="page3.html">page3</a> 
        <a href="page4.html">page4</a> 
        <a href="page5.html">page5</a> 
        <a href="page6.html">page6</a> 
       </div> 
      </li> 
      <li><a href="page7.html">page7</a></li> 
      <li><a href="page8.html">page8</a></li> 
      <li><a href="page9.html">page9</a></li> 
      <li><a href="page10.html">page10</a></li> 
     </ul> 
    </div> 
</header> 

<style> 
.navigationbar ul { 
    overflow: hidden; 
} 

.navigationbar { 
    width: 100%; 
} 

ul { 
    list-style-type: none; 
    margin: 0; 
    overflow: hidden; 
    background-color: #FF5800; 
} 

li { 
    margin-right: auto; 
    margin-left: auto; 
    text-align: center; 
} 

li a, .dropbtn { 
    display: block; 
    text-align: center; 
    color: white; 
    padding: 14px 21px; 
    text-decoration: none; 
    font-family: Verdana 
} 

li a:hover, .dropdown:hover .dropbtn { 
    background-color: red; 
    color: white; 
    transition: background-color 0.8s, color 0.8s; 
} 

li .active{ 
    background-color: red; 
    margin: 0; 
} 

li.dropdown { 
    display: inline-block; 
} 

.dropdown-content { 
    display: none; 
    position: absolute; 
    background-color: #f9f9f9; 
    z-index: 1; 
} 

.dropdown-content a { 
    color: black; 
    text-decoration: none; 
    display: block; 
} 

.dropdown-content a:hover { 
    background-color: red; 
} 

.dropdown:hover .dropdown-content { 
    display: block; 
} 

ul { text-align: center; } 
li { display: inline-block; margin: 0 auto; } 
</style> 
+0

それが中心にされていません。たぶんそれはコード内のパディングと関係があります – martin

+0

@martinそれは、 'ul {display:flex; justify-content:center; } 'それを修正します。ここにあります:https://jsfiddle.net/vrokv6kg/2/ –

+0

これでリスト項目の間にスペースが作成され、反応しません – martin

0

代わりにフロートのフレキシボックスを使用してみてください:

.navigationbar { 
width: 100%; 
background-color: #FF5800; 
margin: 0; 
padding: 0; 
} 

ul { 
width: 50%; 
list-style-type: none; 
margin: 0 auto; 
padding: 0 25%; 
display: flex; 
} 

li { 
margin: 0 auto; 
text-align: center; 
padding: 0; 
justify-content: center; 
} 

li a, .dropbtn { 
width: 10%; 
display: block; 
text-align: center; 
color: white; 
padding: 14px 21px; 
text-decoration: none; 
font-family: Verdana 
} 

li a:hover, .dropdown:hover .dropbtn { 
background-color: red; 
color: white; 
transition: background-color 0.8s, color 0.8s; 
} 

li .active{ 
background-color: red; 
margin: 0; 
} 

li.dropdown { 
display: inline-block; 
} 

.dropdown-content { 
display: none; 
position: absolute; 
background-color: #f9f9f9; 
width: 154px; 
z-index: 1; 
} 

.dropdown-content a { 
color: black; 
text-decoration: none; 
display: block; 
} 

.dropdown-content a:hover { 
background-color: red; 
} 

.dropdown:hover .dropdown-content { 
display: block; 
} 
+0

このコードを使用するとフーバーが機能しません(リスト項目の色の一部だけが赤です) – martin

関連する問題