如何使该导航栏具有响应性?

时间:2019-04-07 13:53:16

标签: html css navbar responsive positioning

我想制作一个导航栏,其徽标为六角形,并按此屏幕截图https://prnt.sc/n8nm3q

所示对齐3个“按钮”

我设法按照全屏(1920x1080)上的方式对齐它们,但是由于我的网站必须具有响应性,所以我不知道如何使该导航栏保持对齐(列表中元素与中心之间的空格)六边形位于导航栏的底行) https://jsfiddle.net/j6wLpq1o/

我也尝试在列表中创建一个列表,但是它没有按照我认为的方式工作 https://jsfiddle.net/53nLqvfp/

    <div id=navigationbar>
    <ul id="logonav">
        <li><a id="logo" class="active" href="#home"><img id="logoimg" src="https://i.imgur.com/pX2h0gT.png"/></a></li>
    <ul id="nav">
        <li class="nav"><a href="#news">Attractions</a></li>
        <li class="nav"><a href="#contact">Shop</a></li>
        <li class="nav"><a href="#about">Contact us</a></li>
    </ul>
    </ul>
</div>

css

 #navigationbar ul{
    display: inline-block;
}

#logonav {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;
    position: fixed;
    width: 100%;
    z-index: 1;
    margin-left:25vw;

}
#logonav ul{
display: inline-block;

}
#logonav ul li{
display: inline-block;
}
ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;
    position: fixed;
    width: 100%;
    text-align:left;
    z-index: 1;
}

li {
    float: none;
    display: inline-block;

}

li a {
    display: block;
    color: white;
    text-align: center;
    text-decoration: none;
    padding: 14px 4vw;
    border-right: 1px solid red;
}

li a:hover{
    background-color: #111;
}

#logo {
    margin-top: 2vh;
    padding-right: 15px;
    border:0px;

}

#logoimg {
    width: 8vw;
    height: auto;
}
#nav{
    margin-top: 15px;
}

谢谢您的时间。

1 个答案:

答案 0 :(得分:0)

似乎您正在使用display:inline-block。您可以使用它,但是需要花费大量媒体查询才能到达您希望项目有时响应的位置。

尝试改用flexbox-https://css-tricks.com/snippets/css/a-guide-to-flexbox/