移除投射在以下 div 上的底部框阴影
Remove bottom box-shadow being cast on following div
我有:
我有一个导航菜单,每个链接都带有框阴影。
紧靠导航菜单下方的 div 触及链接底部。
盒子阴影的底部打破了我标签式界面的错觉。
我需要的:
我需要防止链接的框阴影投射到以下 div。
我的代码:
ul {
list-style: outside none none;
padding:0; margin:0;
}
li {
display: inline-block;
}
a {
background-color: grey;
color: white;
padding: 20px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
display: inline-block;
text-decoration:none;
box-shadow: 1px 1px 3px #222;
}
.selected a{
background-color: blue;
}
div {
background-color: blue;
height: 20px;
}
<nav>
<ul>
<li class="selected"><a href="#">Home</a>
</li>
<li><a href="#">Link 2</a>
</li>
<li><a href="#">Link 3</a>
</li>
</ul>
</nav>
<div class="divider"></div>
很简单:
只需将 position:relative;
添加到 div
div {
position: relative; /* add this */
background-color: blue;
height: 20px;
}
演示: http://jsfiddle.net/a2wLb1fz/
为什么这样做?
基本上您需要建立堆叠上下文以使用 z-index 使布局分层。
为此,您需要明确定义图层的定位和 z-index。
BUT,因为在你的情况下它只有两层,链接容器和它下面的栏,你可以省略额外的定义,因为在链接下面的栏上定义定位足够了。
这是一个更长的版本,可以为您完成这项工作:
nav {
position: relative;
z-index: 1;
}
div {
position: relative;
z-index: 2;
background-color: blue;
height: 20px;
}
我有:
我有一个导航菜单,每个链接都带有框阴影。
紧靠导航菜单下方的 div 触及链接底部。
盒子阴影的底部打破了我标签式界面的错觉。
我需要的:
我需要防止链接的框阴影投射到以下 div。
我的代码:
ul {
list-style: outside none none;
padding:0; margin:0;
}
li {
display: inline-block;
}
a {
background-color: grey;
color: white;
padding: 20px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
display: inline-block;
text-decoration:none;
box-shadow: 1px 1px 3px #222;
}
.selected a{
background-color: blue;
}
div {
background-color: blue;
height: 20px;
}
<nav>
<ul>
<li class="selected"><a href="#">Home</a>
</li>
<li><a href="#">Link 2</a>
</li>
<li><a href="#">Link 3</a>
</li>
</ul>
</nav>
<div class="divider"></div>
很简单:
只需将 position:relative;
添加到 div
div {
position: relative; /* add this */
background-color: blue;
height: 20px;
}
演示: http://jsfiddle.net/a2wLb1fz/
为什么这样做?
基本上您需要建立堆叠上下文以使用 z-index 使布局分层。
为此,您需要明确定义图层的定位和 z-index。
BUT,因为在你的情况下它只有两层,链接容器和它下面的栏,你可以省略额外的定义,因为在链接下面的栏上定义定位足够了。
这是一个更长的版本,可以为您完成这项工作:
nav {
position: relative;
z-index: 1;
}
div {
position: relative;
z-index: 2;
background-color: blue;
height: 20px;
}