如何使导航响应?

时间:2019-12-17 19:28:32

标签: html css responsive-design responsive

我尝试使导航响应,但是我无法管理它。我已经尝试了一些方法,如您在style.css中看到的那样。我的标题已经响应,但是我无法管理导航。

这是我在台式机/笔记本电脑上的网站。 enter image description here

这是我在手机上的网站。我也想像上面的图片一样在中心导航。 enter image description here

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,address,cite,code,del,dfn,em,img,ins,q,small,strong,sub,sup,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;margin:0;padding:0}article,aside,figure,figure img,figcaption,hgroup,footer,header,nav,section,video,object{display:block}a img{border:0}figure{position:relative}figure img{width:amount}figure{margin:0;padding:0;}


body
{
    background-color: #F9F9F9;
    height: 100%;
    font-size: 20px;
    top: 0;
    left: 0;
}

header
{
    width: 100%;
    height: 300px;
    background: url("images/woman-wearing-white-long-sleeved-shirt-973401.jpg");
    background-repeat: no-repeat;


    background-repeat: no-repeat;
    background-position: center 35%;
    background-size: cover;
    overflow: hidden;
}

.opacity
{
    width: 100%;
    height: 300px;
    background: rgba(96, 59, 59, 0.7);
    overflow: hidden;
}


.navigation
{
    width: 700px;
    margin: auto;
    background-color: black;
    color: white;
    text-align: center;
    border-radius: 30px;
    margin-top: -20px;
    margin-right: 25%;
}

.navigation_list
{
    list-style-type: none;
    padding: 10px;
}

.navigation_list_item
{
    display: inline-block;
    padding-left: 20px;
    padding-right: 20px;
}



@media screen and (max-width: 768px){
    header{
        width: 100%;
    }

    .opacity{
        width: 100%;
    }

    .logo{
        width: 474px;
        height: 369px;
        background-repeat: no-repeat;
        background-size: 50%;
        margin-left: 30%;
        margin-top: 50px;
    }

    .navigation
    {
        width: 700px;
        margin: auto;
        background-color: black;
        color: white;
        text-align: center;
        border-radius: 30px;
        margin-top: -20px;
        margin-right: 25%;
    }

    .navigation_list
    {
        list-style-type: none;
        padding: 10px;
    }

    .navigation_list_item
    {
        display: inline-block;
        padding-left: 20px;
        padding-right: 20px;
    }
}
<!DOCTYPE html>
<html>
<link rel="stylesheet" href="style.css">
<body>
<header>


        <div class="opacity">
            <div class="logo">
            </div>
        </div>
</header>
    <section>
<nav class="navigation">
<ul class="navigation_list">
    <li class="navigation_list_item">Over ons</li>
    <li class="navigation_list_item">Filosofie</li>
    <li class="navigation_list_item">Prijslijst</li>
    <li class="navigation_list_item">Specialisaties</li>
    <li class="navigation_list_item">Contact</li>
</ul>
</nav>
    </section>

</body>
</html>

我希望有人可以帮助我解决这个问题。感谢您的努力!

2 个答案:

答案 0 :(得分:1)

您将需要执行以下操作

.navigation
{
    width: 100%;
    margin: auto;
    color: white;
    text-align: center;
    margin-top: -20px;
    margin-right: 25%;
}

.navigation_list
{
    max-width: 700px;
    list-style-type: none;
    padding: 10px;
    background-color: black;
    margin: 0 auto;
    border-radius: 30px;
}

将导航设置为100%,并将宽度移动到ul(导航列表),然后将边距设置为0自动

还有一点要注意,您需要在页面顶部添加查看端口

<meta name="viewport" content="width=device-width, initial-scale=1.0">

要使您的页面具有响应性,您可以阅读有关the view port here

的信息。

希望获得帮助

答案 1 :(得分:1)

对于简单的响应式设计,请尝试以下修改: -添加此块

section {
    display: flex;
}
  • 删除这些行

    margin-right: 25%; /* two occurences */