html - CSS 框阴影 : Only apply to part of an element

标签 html shadow css

我有一个元素,我希望它的一端有阴影重音,就像这样(来自 Photoshop): enter image description here

我得到的最接近的是这样的(HTML + CSS3): enter image description here

那么,是否有可能像第一张图片那样让阴影变淡?这是我的代码:

box-shadow: 0px 0px  5px 1px rgba(0,0,0,.4);

最佳答案

确实可以只用 CSS 实现这种效果,但 CSS 是令人费解的:

.container {
  background-color: rgba(168,214,255,1);
  padding: 20px;
}
.tab {
  height: 50px;
  background-color: #4790CE;
  margin-bottom: 10px;
  border-radius: 20px;
  position: relative;
}

.tab.active {
  background-color: #63B6FF;
  border-radius: 20px 0 0 20px;
   box-shadow: 0 0 15px #3680BD;
}

.tab .shadow {
  position: absolute;
  top: -10px;
  left: 50px;
  right: -20px;
  bottom: -10px;
  border-radius: 20px;
  background-color: transparent;
  -webkit-border-image: -webkit-gradient(linear, left top, right top, color-stop(10%,rgba(168,214,255,0)), color-stop(80%,rgba(168,214,255,1))) 50 50 stretch;
  border-width: 10px 20px 10px 0;
}

您基本上使用 border-image 来遮盖阴影。您可以通过 :after 伪选择器在没有额外标记的情况下实现这一点,但是 :after 不能很好地处理动画。

enter image description here

jsfiddle 上查看演示(仅限 Webkit,但您可以轻松地将其适配到 FF。不幸的是,IE9 就不行了)。

关于html - CSS 框阴影 : Only apply to part of an element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6170065/

相关文章:

html - 如何在选择输入中表示分层数据?

swift - UIView 阴影在 iphone 5s 中不显示

css - Angular:如何根据需要请求图像以加速加载(使用 ngx-bootstrap)

javascript - Js 实时搜索模式

php - 如何在页面末尾加载javascript

internet-explorer - 为什么 MS 过滤器(dropShadow、glow 或 shadow)对 IE 中的 <span> 标签不起作用?

javascript - 在 three.js 中创建非常柔和的阴影?

html - 如何制定流程步骤

javascript - 宽度在 jquery 中返回 0

javascript - 如何在 Safari 和 IE 中访问网络摄像头?是否有 getUserMedia 的替代方法?