css - bootstrap - 顶部带有导航栏的完整背景图像

标签 css twitter-bootstrap background-image navbar

我正在尝试创建一个完整的背景图片页面,其中的导航栏漂浮在图片上方。

我遇到一个问题,导航栏将图像向下推,图像设置在 html 元素的背景上,所以我不知道为什么导航栏会产生这种效果。

我只是直接使用 bootstrap 入门页面的 css,没有导航栏,图像适合整个页面,导航栏位于图像上方并将其向下推:

CSS:

html{
            /* This image will be displayed fullscreen */
            background:url('bg.jpg') no-repeat center center;

            /* Ensure the html element always takes up the full height of the browser window */
            min-height:100%;

            /* The Magic */
            background-size:cover;
        }

        body {
            /* Workaround for some mobile browsers */
            min-height:100%;    
            padding-top: 20px;
            padding-bottom: 20px;           
        }

        .navbar {
            margin-top: 0px;
            margin-bottom: 0px;
        }

HTML:

    <body>
    <div class="container">
        <nav class="navbar navbar-default navbar-custom" role="navigation">
            <div class="container-fluid">
              <!-- Brand and toggle get grouped for better mobile display -->
              <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
                  <span class="sr-only">Toggle navigation</span>
                  <span class="icon-bar"></span>
                  <span class="icon-bar"></span>
                  <span class="icon-bar"></span>
                </button>
                <a class="navbar-brand" href="#">Brand</a>
              </div>

              <!-- Collect the nav links, forms, and other content for toggling -->
              <div class="collapse navbar-collapse navbar-ex1-collapse">
                <ul class="nav navbar-nav">
                  <li class="active"><a href="#">Link 1</a></li>
                  <li><a href="#">Link 2</a></li>
                  <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                      <li><a href="#">Action</a></li>
                      <li><a href="#">Another action</a></li>
                      <li><a href="#">Something else here</a></li>
                      <li><a href="#">Separated link</a></li>
                      <li><a href="#">One more separated link</a></li>
                    </ul>
                  </li>
                </ul>

                </div><!-- /.navbar-collapse -->
            </div>
        </nav>
    </div>

我想要最终得到的效果是整个页面的图像和导航栏,图像显示在它下面,而不是将图像向下推,所以它在导航栏之后开始。

最佳答案

将以下两行 CSS 应用于 html 元素的主体而不是:

 body {
            background:url('bg.jpg') no-repeat center center;
            background-size:cover;  

            /* Workaround for some mobile browsers */
            min-height:100%;    
            padding-top: 20px;
            padding-bottom: 20px;
        }    

关于css - bootstrap - 顶部带有导航栏的完整背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35127659/

相关文章:

javascript - 如何使谷歌地图中的重叠 POI 可访问

html - 使用 removeUI 删除多个元素/使用 tags$div() 为每个变量分配一个 id 包装多个元素

jquery - 带有 Twitter Bootstrap 的 Google CSE 无法正确显示搜索框

javascript - 使用 Bootstrap 下拉菜单显示/隐藏容器?

html - CSS-如何在底部边框线上对齐背景图像?包含 Jsfiddle

css - 如何在不使用 CSS hack 的情况下将此按钮居中?

javascript - 使用 Bootstrap 时创建视频标题

css - 如何制作覆盖背景图像的透明边框(使用 CSS)?

html - 将图像设置为背景

javascript - 在 Vanilla JavaScript 中查找窗口的高度()