Child 元素的 box-shadow 优于 parent 的?

Child element's box-shadow superior to parent's?

不知怎的,我觉得这很奇怪,我自己也解决不了。

我有一个大开头 box-shadow 的表格,它与 parent 容器的顶部内部(插图)box-shadow 重叠。我需要让 parent 的黑色嵌入阴影可见。

看到这个fiddle

z-index 什么都不做。

我的CSS:

#description {
    display: block;
    overflow: hidden;
    box-shadow: inset 0px 17px 11px -15px #000;
    padding-top: 10px!important;
    }
.upload {
    float: left;
    width: 696px;
    margin-top: 1em;
    border: 1px solid #546E7A;
    font-family:"Roboto", sans-serif;
    background-color: #fff;
    box-shadow: 0px -17px 0px 20px #546E7A;
    }

child 的先验怎么来的?

z-index 无济于事,因为 .upload 是#description 的子项,它的显示总是比#description 具有更高的优先级。

这就像在背景为白色的 div 中创建背景为黑色的 div。你会看到的都是黑色的。您在父级上的框阴影仍然存在,但子级阴影的绘制完全覆盖了它。

要解决您的问题并仍然看到发光,您可以在 .upload 中将其缩小:

box-shadow: 0px -17px 0px 1px #546E7A;

http://jsfiddle.net/ccspw1dh/2/

此外,您可以像这里一样链接框阴影:

box-shadow: 0px -17px 0px 1px #546E7A, inset 0px 17px 11px -15px #000;

http://jsfiddle.net/ccspw1dh/4/

您不能使父级 shadow 可见,因为 shadow 用于相同的 element,因此 z-index 将不起作用,但您可以使用 :pseudo 并向其添加 shadow

演示 - http://jsfiddle.net/ccspw1dh/3/

#description:before {
    content:'';
    position:absolute;
    width:100%;
    height:100%;
    left:0;
    top:0;
    box-shadow: inset 0px 17px 11px -15px #000;
}