In the web page I am re-designing, I have a side navigation bar. This bar is fixed and floats as you scroll down the page. It is transparent and follows the screen for easy navigation. It is a nav element with an id="navbar". What I need is to have this navigation bar be centered vertically on all screens. On higher resolution screens it sits high. On lower resolution screens it sits low. How do I center this bar on all screens? Here is a chunk of my code so far. I can provide more if necessary.
This is patial code for one of many pages with the navigation bar:
<div id="row">
<nav id="navbar">
<ul>
<li class="button"><a href="page.html">page</a></li>
<li class="button"><a href="page.php">page</a></li>
<li class="button"><a style="color: red;"href="page.html">page</a></li>
<li class="button"><a href="page.html">page</a></li>
<li class="button"><a href="page.html">page</a></li>
<li class="button"><a href="page.php">page</a></li>
<li class="button"><a href="page.html">page</a></li>
<li class="button"><a href="page.html">page</a></li>
<li class="button"><a href="page.html">page</a></li>
</ul>
</nav>
<div id="an id">
<h1>some text</h1>
<h3>some text</h3>
<h5>some text</h5>
</div>
</div>
This is my current CSS
#row {
display: table-row;
margin: 1%;
}
#navbar {
width: 250px;
position: fixed;
}
#navbar ul {
font-size: 110%;
}
I'll add this in case any one was wondering about the class="button"
li.button {
background-color: transparent;
padding: 2px 6px 2px 6px;
border-radius: 15px;
border-top: 3px solid #F2F2F2;
border-right: 2px solid #260000;
border-bottom: 2px solid #450000;
border-left: 3px solid #D1D1D1;
margin-bottom: 2px;
}
In the next example "navbarwrapper" keeps "navbar" vertically centered on the left side of the viewport.
#navbarwrapper
{
display: -webkit-flex ;
display: flex ;
-webkit-flex-direction: column ;
flex-direction: column ;
-webkit-justify-content: center ;
justify-content: center ;
position: fixed ;
top: 0 ;
left: 0 ;
height: 100% ;
z-index: 999999999 ;
}
#navbar
{
background-color: #f33 ;
width: 40px ;
height: 100px ;
opacity: 0.8 ;
}
<div id="navbarwrapper">
<div id="navbar"></div>
</div>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
<p>sdljdjlj fnfwekjefw efwklefwkwef efwnlewflnnefw</P>
I hope it helps.