有没有一种方法可以在一个元素上使用两个CSS3框阴影?


156

我正在尝试在上面有两个阴影的Photoshop模型中复制按钮样式。第一个阴影是内部的打火机阴影(2px),第二个阴影是按钮本身(5px)外部的投影。

在此处输入图片说明

在Photoshop中,这很容易-内部阴影和阴影。在CSS中,我显然可以拥有一个,但不能同时拥有两个。

如果您在浏览器中尝试下面的代码,则会看到该框阴影将覆盖插入的框阴影。

这是插图框阴影:

box-shadow: inset 0 2px 0px #dcffa6;

这就是我想要的按钮上的阴影:

box-shadow: 0 2px 5px #000;

对于上下文,这是我的完整按钮代码(带有渐变和全部):

button {
    outline: none;
    position: relative;
    width: 160px;
    height: 40px;
    font-family: 'Open Sans', sans-serif;
    color: #fff;
    font-weight: 800;
    font-size: 12px;
    text-shadow: 0px 1px 3px black; 
    border-radius: 3px;
    background-color: #669900;
    background: -webkit-gradient(linear, left top, left bottom, from(#97cb52), to(#669900));
    background: -moz-linear-gradient(top, #97cb52, #669900);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#97cb52', endColorstr='#669900');
    box-shadow: inset 0 2px 0px #dcffa6;
    box-shadow: 0 2px 5px #000;
    border: 1px solid #222;
    cursor: pointer;
}

Answers:



16

框阴影可以使用逗号来产生多种效果,就像背景图片(在CSS3中)一样。


虽然您可以应用多个阴影,但我发现,应用内嵌阴影是一种特殊情况。(但是我想那只适用于图像)。
JayC 2011年

真?我目前正在移动设备上,因此无法检查;但我之前从未听说过该消息……明天,下班后再调查一下。= /
大卫说应

如果要在图像上插入阴影,则必须在顶部设置元素或伪元素。这可能很棘手。
2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.