角度 100% 高度导致 0 高度

Par*_*dox 0 html css angular

我正在开发我的第一个有角度的网站,我正在尝试创建一个填充屏幕其余部分的渐变 div。grad1当我设置渐变的高度时px,它工作得很好。但是,如果我使用 50% 或 100% 之类的百分比,或者只是让它设置默认高度,则会导致高度为零。可能是什么原因造成的?

我的组件.html

<div id="grad1"></div>
Run Code Online (Sandbox Code Playgroud)

我的组件.css

#grad1 {
  width: 100%;
  background-color: #b0afb4; /* For browsers that do not support gradients */
  background-image: linear-gradient(#b0afb4, #fff, #b0afb4); /* Standard syntax (must be last) */
}
Run Code Online (Sandbox Code Playgroud)

应用程序组件.html

<div>
  <app-home-display></app-home-display>
</div>
<router-outlet></router-outlet>
Run Code Online (Sandbox Code Playgroud)

app-component.css 为空

索引.html

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>MyWebApp</title>
  <base href="/">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
  <app-root></app-root>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

全局样式.css

body {
  margin: 0;
}
Run Code Online (Sandbox Code Playgroud)

小智 5

如果您的 div 没有内容(文本或其他),其高度将默认为 0。如果您希望 div 填充整个页面,您可以使用:

#grad1 {
    height: 100vh;

    ...
}
Run Code Online (Sandbox Code Playgroud)

这意味着您将 div 高度设置为整个浏览器视口高度(对于不同的屏幕分辨率很有用)。