我已经找到了答案,但我不确定这是解决我的问题的最佳方法。我的页面有两个面板:一个侧边栏和一个内容视图。我想在侧边栏上有一个阴影,就好像内容视图正在生成它一样:
问题是我的侧边栏是一个带有按钮、图标等的菜单。所以如果我尝试在那里设置(插入)阴影:
.sidebar {
box-shadow: inset -7px 0 9px -7px rgba(0,0,0,0.7);
}
我得到:
所以,在我有按钮的地方,它们隐藏了阴影。如果我以其他方式执行此操作,则内容视图实际上会生成它:
.content {
box-shadow: -7px 0 9px -7px rgba(0,0,0,0.7);
}
我得到了内容的阴影,但如果内容比屏幕的总高度“短”,阴影就会消失。与上一个案例类似。
我的最终方法是为内容视图或使用 Javascript 设置手动高度,以使其适应视口高度。但我不确定这是最好的方法。我想知道是否有更多的CSS方式来做到这一点,而无需手动设置或削减阴影。
编辑
在创建小提琴以更好地理解我的问题时,我意识到我background-color
在按钮上有一个。但由于我在按钮上有一个hover
和一个transition
,它仍然隐藏了阴影。看看:http: //jsfiddle.net/h3cp59qd/