我希望我的div的内心阴影能够克服它的内容(请注意,我并不是简单地希望图像具有内部阴影,我有一个更复杂的可滚动div,所以很多孩子这只是一个很小的例子。
div {
white-space: nowrap;
box-shadow: inset 0 0 10px #000000;
}
img {
display: block;
}

<div>
<img src="http://www.claireking.com/wp-content/uploads/2018/01/images.png" />
</div>
&#13;
答案 0 :(得分:2)
只需为阴影量添加填充。
div {
white-space: nowrap;
box-shadow: inset 0 0 10px #000000;
padding: 10px;
}
看工作小提琴: https://jsfiddle.net/f0qasdo6/
UPD:另一个不改变div
尺寸的工作示例:
div {
white-space: nowrap;
position: relative;
}
div:before {
content: '';
display: block;
position: absolute;
top:0;
left: 0;
right: 0;
bottom: 0;
box-shadow: inset 0 0 10px #000000;
}
这种方法的缺点是你将无法点击div中的内容,因此可以用它来为不可交互的块添加效果。
答案 1 :(得分:2)
同意Vitalii Chmovzh的答案,但如果你不想填充任何空间。
所以只需将其用于img
代码。
img{
display: block;
position:relative;
z-index:-1;
}
不改变盒子模型的大小。
更新了fiddle
答案 2 :(得分:1)
这个问题是图像会在阴影上呈现。
试试这个,
div {
white-space: nowrap;
position: relative;
}
img{
display: block;
}
div::before {
box-shadow: inset 0 0 10px #000000;
position: absolute;
width: 100%;
height: 100%;
content: "";
}
答案 3 :(得分:0)
不知何故,你的形象对我不起作用。这是解决方案:
div {
width: 70%;
white-space: nowrap;
box-shadow: inset 0 0 10px #000000;
}
img{
width: 100%;
display: block;
position: relative;
z-index: -1;
}