2017-03-12 1 views
0

Dies ist, was mein nav bar wie jetzt aussieht: enter image description hereNavigationsleiste mit dem Titel auf der linken und Tasten auf der rechten Seite

Dies ist, was ich es wie (mit dem Titel auf der linken Seite und die Tasten sehen wollen auf der rechten Seite): enter image description here

getrennt ich die Navigationsleiste in eine linksbündig Liste für den Titel und eine rechts ausgerichtet Liste für die Tasten, aber aus irgendeinem Grund werden die beiden Listen auf einander stapeln, anstatt zu sein auf einer Linie. Wie erstelle ich oben die Navigationsleiste?

HTML

<div class = "navBarWrapper"> 
    <div class="top bar"> 
     <ul class = "left"> 
      <li class = "title">Photo Albums</li> 
     </ul> 
     <ul class = "right"> 
      <li class = "buttons"> <a class = "iconLink" href = ""><img class = "iconNotHover" src = "images/uploadImage.png" alt = "uploadImage" width = "40" align = "middle"/></a></li> 
      <li class = "buttons"> <a href = "login.html" class="otherPages">Login</a></li> 
     </ul> 
    </div> 
</div> 

CSS

.navBarWrapper { 
    position: fixed; 
    z-index: 1; 
    width: 100%; 

} 

.left { 
    text-align: left; 
} 

.right { 
    text-align: right; 
} 

.bar { 
    height: 8.02%; 
} 


.bar li { 
    display: inline-block; 
} 
+0

Ist das Ihre Frage beantworten? – bhansa

Antwort

1

Sie wollen nicht text-align verwenden, um ein Blockelement nach links oder rechts zu bewegen. Dadurch werden Inline-Elemente innerhalb eines Blockelements nur nach links oder rechts ausgerichtet, und das Blockelement befindet sich immer noch in seiner eigenen Zeile.

Sie können die Links/Rechts-Elemente nach links/rechts schwimmen, aber ich würde Flexbox auf dem übergeordneten verwenden, justify-content: space-between zu/rechts, getrennten linken und align-items sie vertikal ausrichten, wie Sie wollen.

.navBarWrapper { 
 
    position: fixed; 
 
    z-index: 1; 
 
    width: 100%; 
 
} 
 

 
.bar { 
 
    height: 8.02%; 
 
    display: flex; 
 
    justify-content: space-between; 
 
    align-items: center; 
 
} 
 

 
.bar li { 
 
    display: inline-block; 
 
}
<div class="navBarWrapper"> 
 
    <div class="top bar"> 
 
    <ul class="left"> 
 
     <li class="title">Photo Albums</li> 
 
    </ul> 
 
    <ul class="right"> 
 
     <li class="buttons"> 
 
     <a class="iconLink" href=""><img class="iconNotHover" src="images/uploadImage.png" alt="uploadImage" width="40" align="middle" /></a> 
 
     </li> 
 
     <li class="buttons"> <a href="login.html" class="otherPages">Login</a></li> 
 
    </ul> 
 
    </div> 
 
</div>

Oder wenn Sie wollen, dass sie schweben, ist hier, dass das Layout mit overflow: auto auf .bar den Schwimmer zu löschen.

.navBarWrapper { 
 
    position: fixed; 
 
    z-index: 1; 
 
    width: 100%; 
 
} 
 

 
.left { 
 
    float: left; 
 
} 
 

 
.right { 
 
    float: right; 
 
} 
 

 
.bar { 
 
    height: 8.02%; 
 
    overflow: auto; 
 
} 
 

 
.bar li { 
 
    display: inline-block; 
 
}
<div class="navBarWrapper"> 
 
    <div class="top bar"> 
 
    <ul class="left"> 
 
     <li class="title">Photo Albums</li> 
 
    </ul> 
 
    <ul class="right"> 
 
     <li class="buttons"> 
 
     <a class="iconLink" href=""><img class="iconNotHover" src="images/uploadImage.png" alt="uploadImage" width="40" align="middle" /></a> 
 
     </li> 
 
     <li class="buttons"> <a href="login.html" class="otherPages">Login</a></li> 
 
    </ul> 
 
    </div> 
 
</div>

+0

Ich habe die Flex-Methode versucht, aber beim ersten Laden der Datei. Es sieht aus wie das Bild in meiner Antwort. Wenn ich dann im Kontrollfeld des Inspektors die Option "justify-content: space-between;" deaktiviere und überprüfe, sieht es wie dein Code-Snippet aus. – 14wml

+0

@ 15ongm sagst du das passiert auf deiner persönlichen Website? funktioniert meine Demo? –

+0

Ja, es passiert auf meiner persönlichen Website; Dein Demo funktioniert. Ich habe es auch mit der floats-Methode versucht und festgestellt, dass ich "float: left" aktivieren und deaktivieren musste, um die Navigationsleiste mit dem gesamten Text und den Bildern in einer Zeile auszurichten. Force Refresh hat mein Problem auch nicht gelöst. – 14wml

Verwandte Themen