为什么这个div拒绝扩展到100%的高度?

时间:2015-08-19 01:02:53

标签: html css

我正在开展Angular项目。我有骨架,我正在尝试设计由'ng-view'插入的部分。当我尝试在about id(我切换到问题的颜色)上设置背景图像时,它会自动将该div设置为0px,即使我将高度设置为100%。 html / body height设置为100%,但它仍然不起作用。我已经尝试了许多类似问题的答案,但它仍然无效。为什么是这样?顺便说一下,我正在使用一个部分,因为我正在制作一个滚动网站。所以当我说div时,我指的是部分。

注意:例如,如果我将高度设置为500px,则会显示。虽然百分比不起作用。

主页 -

<body ng-app="jayPortfolio" ng-controller="mainController as main">

  <!-- NAVBAR -->
  <header id="main-header">
    <nav class="navbar navbar-inverse navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
          <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="#">JAY</a>
        </div>

        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav navbar-right">
            <li><a href="#contact">About</a></li>
            <li><a href="#contact">Portfolio</a></li>
            <li><a href="#contact">Experience</a></li>
            <li><a href="#contact">Contact</a></li>
          </ul>
        </div>
      </div>
    </nav>
  </header>

  <!-- LOAD OTHER PAGES HERE -->
  <main id="main-pages">
   <div ng-view></div>
  </main>
</body>

偏 -

<section id="about">    
</section>

CSS -

html, body {
  height: 100%;
  width: 100%;
  margin: 0;
}

#about {
  height: 100%;
  width: 100%;
  /*background-image: url('../../images/jay-ocean.jpg');*/
  background-color: green;
  background-repeat: no-repeat;
  position: relative;
}

ANSWER -

命名为div ng-view,#ng-view,而不是更新下面的CSS。正如阿列克谢的回答所示。

html, body, main, #ng-view {
  height: 100%;
  width: 100%;
  margin: 0;
}

2 个答案:

答案 0 :(得分:1)

https://jsfiddle.net/4wovvt6p/1/

正如我在评论中提到的,您已将height:100%应用于正文,但该部分未将其应用于包含div的部分。默认情况下,div从0px开始并根据内容进行扩展,如果您的内容为100%,那么它是0px的100%,因此仍为0。

答案 1 :(得分:0)

根据我的理解,你无法根据%设置CSS对象的高度,我对CSS相对较差,所以我可能错了,不过我记得当我遇到同样的问题时会有一些结果几个月前。