【发布时间】:2018-08-22 03:58:54
【问题描述】:
我无法让标题类中的 CSS box-shadow 与其下方的导航栏重叠。阴影出现在标题后面,但在底部不可见。完整的示例是一个三列页面布局,带有页眉、导航栏和正文内容页脚。 Codepen
/* Header/Blog Title */
.header {
padding: 30px;
text-align: center;
background: white;
box-shadow: 1px 18px 5px red;
}
.header h1 {
font-size: 50px;
}
/* Style the top navigation bar */
.topnav {
overflow: hidden;
background-color: #333;
}
/* Style the topnav links */
.topnav a {
float: left;
display: block;
color: #f2f2f2;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
<body>
<div class="header">
<h1>My Website</h1>
<p>Resize the browser window to see the effect.</p>
</div>
<div class="topnav">
<a href="#">Link</a>
<a href="#">Link</a>
<a href="#">Link</a>
<a href="#" style="float:right">Link</a>
</div>
</body>
【问题讨论】:
-
这是正常行为,因为默认情况下,元素将位于其先前兄弟的顶部。在标题和导航元素上使用
position: relative;,并相应地设置 z-index(在标题上高于菜单)以覆盖默认行为。