【发布时间】:2013-11-27 23:01:59
【问题描述】:
我基于 Hot Towel 模板启动了一个 MVC4 SPA Web 应用程序。我开始清理我不想要的页眉和页脚内容。我删除的其中一件事是从文件 app.css 中将margin-top 的section.main 设置为80px。我真的不希望标题占用这么多空间。但我对结果感到困惑。甚至在我删除之前,根据我的 Chrome 浏览器窗口的宽度,我在标题中看到了一些奇怪的行为。现在我已经删除了它,我看到了类似的奇怪的“包装”行为,它允许我的标题与我的内容重叠。
当标题宽度为 979 像素时,我的屏幕如下所示:
由于我只是重新调整浏览器窗口的大小,在 980 像素处,我跨越了一个阈值,导致内容在标题下向上滑动,如下所示:
什么可能导致这种重叠?我在哪里可以尝试使content section 严格低于header?我没有看到任何float 样式应用于所涉及的元素。
真正奇怪的是,尽管header 的大小变为0,但它包含的nav 元素在适当的大小下仍然清晰可见。一个容器怎么会小于它的内容呢?
我在可能相关的 app.css 中发现了这个:
@media only screen and (max-width: 979px) {
.page-splash-message {
font-size: 150%;
}
.navbar-fixed-bottom {
position: fixed;
}
footer span {
padding: 10px 50px;
font-size: 14px;
}
}
【问题讨论】:
-
查看您的 CSS,搜索媒体查询,在那里进行调查。关键字 threshold 在“跨越阈值”...
-
@Xander 感谢您的提示。我正在添加一些我发现似乎是负责任的 CSS(暂时)。也许您可以帮助描述/解释它正在做什么可能导致所描述的行为。一旦我理解它,希望解决方案会很清楚。
-
如果我不得不猜测(因为您没有提供要查看的 navbar-fixed-top 代码),navbar-fixed-top(假设正在使用该死的 Bootstrop)设置 @987654333 @要显示的元素:固定。这就是为什么margin-top首先存在的原因,以伪造主要内容的位置在浮动的导航栏下方。最有可能在 980px 下删除了固定位置,或者您仅从 >979px 媒体查询样式中删除了 margin-top,这就是为什么在 980px 以下,它看起来很好,但在上面,内容会滑动到它应该在的位置。
-
因为
position: fixed。 -
我尝试将其更改为相对并完全删除该块,但没有效果。然后我意识到在
bootstrap-responsive.css中引用979px的@media样式(我今天之前从未听说过)还有一大堆。这似乎不是设计灵活布局的干净方法。你会推荐什么?我可以用更明智的方式覆盖我的app.css中的引导样式吗?
标签: jquery html css layout hottowel