我遇到了css和angular 2材料的问题。任何固定定位元素的行为都不像是固定在md-sidenav-container内部。如果它不在容器内,它就能完美地工作。这是一个问题的链接;
只需将md-toolbar复制并粘贴到容器内,您就会看到差异。
https://embed.plnkr.co/5m3vwp7q0Do9uJKchvqD/
如果任何html元素(包括材料' s)在容器外部固定工作正常,但如果它在容器内,它会失败并保持(有时是disappers)它在哪里(我相信它表现得像位置:相对)
我在这里遗漏了什么或者它是一个错误还是什么?
由于
答案 0 :(得分:0)
我不知道这是一个错误还是预期的行为,但几个月前我遇到了同样的问题。我找到的解决方案是在以下标记上设置css属性height: 100%
(假设您的sidenav是您的根级别):html
,body
,main
。
您需要在<md-sidenav-container>
标记中放入要修复的每个元素,它应该可以正常工作。
我本来想编辑你的plunker但是,由于某些原因,systemJS似乎产生了一个奇怪的DOM(有多个<html>
,<body>
等标签)。您需要在height: 100%
<md-sidenav-container>
修改强>
看起来我忘记提及<md-sidenav-container>
也需要获得height: 100%
。关于双滚动条,尝试在overflow-y: auto
上设置<md-sidenav-container>
。
然而由于systemJS的特定DOM,它可能无法解决您的问题。如果您不是特别需要它,我建议您转储它并尝试没有systemJS的项目。如果你这样做,恐怕我无法进一步帮助你。