angular - 占用 100% 的可用空间
问题描述
我正在使用 3 个组件:
<menu (setAnimal)='setAnimal($event)' ></menu>
//principalComponent
<router-outlet (activate)='onActivate($event)'></router-outlet>
<footer></footer>
红色边框组件称为PrincipalComponent
( <router-outlet>
),它应该具有移除页眉和页脚占用的空间后的可用高度。如何使PrincipalComponent
包含可用空间的总高度?
这是我的代码:
https://stackblitz.com/edit/angular-8tgjnk?file=app/principal.component.ts
import { Component, Input } from '@angular/core';
@Component({
selector: 'principal',
template: '<div style="height:100%;border:1px solid red;"> outer-
outlet</div>',
styles: [`h1 { font-family: Lato; }`]
})
@Component({
selector: 'menu',
template: `<div style='border:1px solid blue; height:100px'>THIS IS THE
MENU</div>`,
styles: [`h1 { font-family: Lato; }`]
})
@Component({
selector: 'footer',
template: `<div style='border:1px solid green'><h1>THIS IS THE FOOTER
</h1> </div>`,
styles: [`div{position: absolute;bottom: 0;width: 100%;}`]
})
解决方案
您始终可以将路由器插座放在样式化的 div 中。
<menu (setAnimal)='setAnimal($event)' ></menu>
<div class="principal-container">
<router-outlet></router-outlet>
</div>
<footer></footer>
样式.scss:
.principal-container {
height: calc(100vh - $footer-height -$header-height);
}
或者您想要为这些矩形设置样式的任何其他方式。
推荐阅读
- leaflet - 禁用地图框中标记的点击事件
- logstash - 如何使用自定义 Logstash grok 模式?
- linux - 在剪切期间添加异常会返回不需要的结果
- c - GCC最高指令集兼容多种架构
- julia - 许多嵌套 for 循环的替代方案?
- c# - Xamarin Forms HttpClient PostAsync 不返回响应
- python - torch.mean(data, 0) 和 torch.mean(data) 对向量的不同行为
- extjs - 未捕获的类型错误:无法读取 null 的属性“分离”
- r - R为某些行计算组中的中位数和最后一行
- dart - 如何在 Flutter 中使用其他组件在页面中实现选项卡控制器?