如何在bootstrap中为移动屏幕(小于600px)设置导航栏宽度已满?

时间:2015-08-14 11:05:45

标签: html css twitter-bootstrap media-queries

在图像中(如下所示),导航栏没有占据全宽。我希望它在小屏幕(< 600px)中占据全宽。相关代码和屏幕截图如下所示。我尝试过多种方式但失败了。

HTML:

<header class="header-area">
            <nav class="header-nav navbar">
                <div class="container-fluid">
                    <ul class="nav navbar-nav text-center text-uppercase">
                        <li><a href="#">About us</a></li>
                        <li><a href="#">Work</a></li>
                        <li>
                            <a href="#">
                                <img src="images/logo1.png" class="img-responsive" alt="website-logo" style="width: 80px;height:auto;"/>
                            </a>
                        </li>
                        <li><a href="#">Shop</a></li>
                        <li><a href="#">Contact</a></li>
                    </ul>
                </div>
            </nav>
        </header>

CSS:

header-area {
    background: url("images/background1.jpg") no-repeat 0 0 / 100% 100%;
    color: #84828D;
    padding-bottom: 474px;
}
.header-nav .nav, .header-nav .nav.navbar-nav {
    width: 100%;
    float: inherit;
}
.header-nav.navbar .nav, .navbar .nav > li {
    float: inherit;
    display: inline-block;
    vertical-align: middle;
}

媒体-QUERY:

@media all and (max-width: 600px) {
    .navbar .nav > li {
        display: block;
    }
    .navbar .nav > li  img {
        margin: auto;
    }
}

Problem

2 个答案:

答案 0 :(得分:1)

为此媒体查询添加一些代码

@media all and (max-width: 600px) {
    .container-fluid {
        padding:0; /* Extend your menu really full width without padding of container-fluid */
    }
    .navbar-nav {
        margin:0; /* Center your menu with current 100% width available */
    }
    .navbar .nav > li {
        display: block;
    }
    .navbar .nav > li  img {
        margin: auto;
    }
}

希望这有帮助!

答案 1 :(得分:1)

在bootstrap.css中使用CSS导致菜单在

中推送-15px的原因
.navbar-nav {
    margin: 7.5px -15px;
}

使用0px在媒体查询中添加以下CSS,以便菜单展开到容器的整个宽度

.navbar-nav {
    margin: 7.5px 0px;
}

@media all and (max-width: 600px) {
    .navbar-nav {
        margin: 7.5px 0px;
    }   
    .navbar .nav > li {
        display: block;
    }
    .navbar .nav > li  img {
        margin: auto;
    }
}

Fiddle