用于在块级元素(如 div)上投射阴影。
.shadow {
box-shadow: 3px 3px 5px 6px #ccc;
}
- 阴影的水平偏移量,正值表示阴影将在框的右侧,负偏移量将使阴影在框的左侧。
- 阴影的垂直偏移量,负值表示盒影将在框上方,正值表示阴影将在框下方。
- 模糊半径(可选),如果设置为 0,则阴影将很锐利,数字越大,模糊程度越大。
- 扩展半径(可选),正值会增加阴影的大小,负值会减小阴影的大小。默认值为 0(阴影与模糊相同大小)。
- 颜色
示例
内阴影
.shadow {
box-shadow: inset 0 0 10px #f8a100;
}
示例
只在一侧
使用负扩展半径,您可以使盒影挤压并只将其推离框的一侧。
.one-edge-shadow {
box-shadow: 0 8px 6px -6px black;
}
浏览器支持
这些浏览器支持数据来自 Caniuse,其中包含更多详细信息。数字表示浏览器从该版本起支持该功能。
桌面
Chrome | Firefox | IE | Edge | Safari |
---|---|---|---|---|
4* | 3.5* | 9 | 12 | 5* |
移动/平板
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
127 | 127 | 4 | 4.0-4.1* |
Internet Explorer 盒影
您需要额外的元素……
<div class="shadow1">
<div class="content">Box-shadowed element</div>
</div>
.shadow1 {
margin: 40px;
background-color: rgb(68,68,68); /* Needed for IE */
box-shadow: 5px 5px 5px rgb(68 68 68 / 0.6);
filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius=3,MakeShadow=true,ShadowOpacity=0.30);
-ms-filter: "progid:DXImageTransform.Microsoft.Blur(PixelRadius=3,MakeShadow=true,ShadowOpacity=0.30)";
zoom: 1;
}
.shadow1 .content {
position: relative; /* This protects the inner element from being blurred */
padding: 100px;
background-color: #ddd;
}
更多信息
- CSS 背景和边框模块级别 3 规范 (W3C)
- CSS 技巧:多色和镂空阴影 (DigitalOcean)
很酷,但是如果你能添加一些外观示例(自动生成或带有示例的页面)那就太棒了。
此外,对于我们 Windows 用户来说,剪贴板功能将非常受欢迎:D
刚刚添加了一个示例。
嗨,cris
我们如何修复 IE 中的阴影
如果你有任何相关想法
谢谢
muhaha
我在我的网站上创建了一个教程和示例页面,其中包含一些非常酷的 css box shadow 属性的示例。查看教程和实时演示:http://studentwebhosting.com/tutorials/amazing-css3-box-shadow-examples/
是的 - 你也可以添加一个 css 圆角 - 它会带来更 приятный look
有没有办法让它在 IE7 或 8 中工作?
没有。IE 9 将支持
box-shadow
,所以不用担心!我在 IE9 Beta 中试过,结果失败了。
我刚在某处找到了这个(我忘记了…)
filter:progid:DXImageTransform.Microsoft.dropShadow(color=#ccc, offX=5, offY=5, positive=true);
不太好,不过有点用:)
感谢 Google 的 Chrome Frame,现在可以在 IE 6、7 和 8 中享受这种功能。
http://code.google.com/chrome/chromeframe/
我非常喜欢它,并且在我的所有项目中都使用它。
查看 css3pie.com
IE 6 到 IE-8 不起作用。
之前我发现了一种使用各种视觉滤镜的巧妙方法来解决 box-shadow 的问题,由 [User Agent Man](http://www.useragentman.com/) 创建。你可能可以使用这种方法来应用内嵌样式…不确定,值得研究一下。
[如何在 IE6-8 中使用无 JavaScript 的方法模拟 CSS3 box-shadow。](http://www.useragentman.com/blog/2011/08/24/how-to-simulate-css3-box-shadow-in-ie7-8-without-javascript/)
Drop-shadow 生成器
我创建了一个 drop-shadow 生成器,它实际上可以在 IE7 和 8 中使用
您好,请您告诉我如何根据文本大小自动调整 boxshadow 的宽度?谢谢。
以下是如何在所有浏览器中使其工作,包括 IE、Chrome、FireFox、Safari 等等!
方法如下
你需要添加浏览器前缀,如下所示:
-ms-box-sha...
以下是一个示例
HTML5
CSS
如何创建弯曲的盒子阴影?
你可以尝试将其与
border-radius
一起使用以创建弯曲边缘。或者,可以考虑使用filter: drop-shadow()
来创建更复杂的曲线。我认为你的内嵌代码中多了一个零 - 你的参考 URL 这样写
而你写成了
确实这是一个错误。有趣的是,即使有这个错误,它也能正常工作,对吧?并不是所有的属性都能如此宽容。
它之所以起作用是因为第四个值实际上是有效的。它被称为“扩展半径”。
我找到了这个网站,它更详细地描述了你可以对 box-shadow 属性执行的操作(包括多色阴影等有趣的东西)。 – http://fredericiana.com/2009/06/12/shadow-boxing-with-moz-box-shadow/
理论上,-webkit-box-shadow 应该与 Firefox 中的 -moz-box-shadow 具有相同的效果,但我发现实际上并非如此,特别是在使用 RGBA 值作为颜色时。我发现必须先放置 RGBA 值才能让 Safari 识别(讽刺的是,Chrome 似乎并不在意)。
同样,Webkit 引擎本身似乎也不支持 Inset 值(Chrome 和 Safari 都没有显示)。希望这种情况很快能改变(据我所知,他们仍在修复 box-shadow 支持中的错误)。
看起来很不错!
感谢与我们分享。只等待在没有图片的情况下为 IE 7/8 找到一种解决方法!
同意,内阴影 css 在我的主页上对我的 opt in 框看起来非常不错。
喜欢这个网站!
刚找到一个:http://www.netzgesta.de/tripleb/
非常适合静态内容,甚至带有框。
但是,它依赖于类名。它通过 js 文件解析这个名字并渲染块。但是我需要它用于鼠标悬停事件,并且它在该事件之后不再解析。
在 ie 中不起作用……
IE 不支持任何 CSS3,直到 IE9 发布为止。
任何 webby 人都知道这一点。
只是好奇。如何让阴影均匀地围绕盒子。而不是只出现在右边?
将水平和垂直偏移量设置为 0px…
有没有办法选择阴影出现的位置(去掉底部),但仍让阴影居中?
我试图将其应用于我导航栏上的选项卡,当阴影出现在选项卡下方时(应该看起来像是它下方页面的部分)看起来很奇怪。
Mikkel:(抱歉,嵌套评论已达上限)在我的脑海中,使用绝对定位和 z-index 来使底部阴影比页面更低会怎么样?
也许尝试使用负的垂直偏移量?
Mikkel,你也可以尝试添加多个相同颜色的阴影,使顶部和两侧都有阴影,但底部没有。像这样
.shadow{box-shadow:5px -5px 5px #ccc, -5px -5px 5px #ccc;}
当然,你可以使用多个阴影来实现更复杂的效果,但这给了你一个想法。
@Mikkel: 将你的内阴影偏移一个方向,然后添加一个等于或大于你的偏移的负扩展,以便使阴影比你的盒子更大。FireFox 例子
.shadow {
-moz-box-shadow: 5px 0px 5px -5px #000 inset;
}
有没有 Webkit 的解决方法?
内嵌不起作用!?
这里是最新的版本。在 Webkit 的夜间版本中可以工作:
这里链接。
感谢您与我们分享,这是一篇有趣的文章,我已经尝试过了,结果很棒。
在 IE 支持之前,谁在乎呢?从苹果的角度来看世界真是令人兴奋,但要小心悬崖边……而且,是的,Win7 和 Office 2010 已经发布了,CSS3/9 很快就会到来。感谢微软。
也许我们不应该对 IE 9 太兴奋,或者过早地感谢微软。
可能是他们为我们创建了另一个需要跳过的障碍。IE 9 最低要求 Vista,据报道,64% 的 Windows 用户仍在使用 XP。
我们真的能指望人们仅仅为了获得 IE 9 而更换整个系统吗?
微软最大的问题是浏览器与操作系统捆绑得太紧密,而其他所有主要浏览器对平台的依赖性较低,更容易升级以满足新功能。
我们已经诅咒 IE 6 很长时间了,不幸的是,我们可能会遇到类似的情况,IE 7 甚至 IE 8 也是如此。
这个统计数据是错误的。Ie9 的外观和功能(从我测试的结果来看,很棒)。正如你所说,它依赖于平台,它将永远比其他任何东西都更好地利用硬件加速。这根本不是缺点。
另一方面,如果你一直在关注 ie9,你会注意到它没有大家期待的 CSS 3 热潮。
没有阴影,没有渐变,没有过渡,没有酷炫的设计技巧……
IE 的整体市场份额现在已低于 50%。如果我们移除像 IE 6 这样的老古董,它们的存在仅仅是为了支持旧程序,以及 IE 7,它同样也仅仅是为了支持旧程序和一些老古董,那么 IE 的实际用户市场份额约为 36%。我不确定我们是否真的需要继续坚持“必须等待 IE”的说法,尤其是在某些功能在所有版本的 IE 中都能很好地降级的情况下。即使我针对所有美国网站的统计数据也显示 IE 的市场份额正在下降。
当我们考虑到智能手机浏览器的惊人增长市场份额(除了 Win7phone),非 CSS3 或 HTML5 浏览器(IE)的主导地位将会进一步下降。
我可以理解创建两个样式表,一个用于 IE,另一个用于所有其他浏览器,但同时,我目前的看法是 IE 已经不再是绝对的主导浏览器,我不必再围绕它进行设计了。仅供参考。
@richphitzwell - 我完全同意你的观点!我也不再为 IE 设计了。我不认为我是在通过苹果的视角看问题。Safari 并不是唯一一个不是 IE 的浏览器。:)
IE7 中不起作用
IE8 中也不起作用 :(
不喜欢说教,但是为了将来能顺利使用,box-shadow 属性应该放在最后,这样当 CSS3 成为公认标准时,它就会被使用。
我也有同样的想法。
我不确定这是否重要……
只要它们都一样,浏览器就会要么支持它,要么不支持它。如果供应商扩展覆盖了原始扩展,谁在乎呢?它们都是相同的圆角。然后,如果该浏览器以后不再支持该扩展,那也不重要,因为它会使用原生属性并忽略该扩展。
我一直使用 CSS3 Pie 在 IE 中获得相同的效果,而不会破坏其他任何东西,它一直为我工作得很好。css3pie.com
这是 IE 的解决方案。
我刚刚查看了 CSS3Pie 网站,他们明确表示不支持 inset 关键字。你能提供一个在 IE<9 中工作的示例吗?
当我在带有 legend 的 fieldset 上添加 box-shadow 属性时,在 Firefox 中,阴影的显示宽度为 fieldset + legend 的宽度,但在 Chrome 或 Opera 中,它在没有 legend 的情况下显示(正如我所预料的那样)
有没有解决方法?
谢谢,伙计。我一直都在寻找这个教程。
我只想分享我在 Firefox(或者可能是任何基于 Mozilla 的浏览器)中发现的关于 box-shadows 的一些情况。
如果你使用它作为包装器,给它一个宽度、一个 bg(-color)、**100% 的高度**,并给它一个 box-shadow,你会注意到该元素不会完全延伸到屏幕/浏览器底部……我的意思是,它不会像使用 100% 高度时那样“接触”浏览器的框架。在基于 Webkit 的浏览器中,它按预期工作。似乎 Firefox 为阴影留出了空间。
我的解决方法是在 Mozilla 浏览器中对阴影应用一个负 Y 偏移。偏移量至少要与模糊一样大。
-moz-box-shadow: 0px -10px 10px #color;
在元素的右侧和左侧生成阴影,而顶部和底部则完全延伸到浏览器的边缘。
我希望我的意思很清楚,并能避免一些混淆。
感谢 Clemens,我无法弄清楚如何解决,但是你救了我!
我建议使用这种方法,但要提醒你,如果你使用这种方法,我不认为阴影会延伸到底部。换句话说,由于淡出/模糊值,阴影会在负垂直偏移处开始淡出。基本上,负垂直偏移只是将整个东西向上移动,因此你不会完全得到你想要的效果。除非有人知道关于这些值中的一个的某些魔法,而我却不知道……?
顺便说一下,这种效果可以通过多个背景来实现(是的,不如这种方法优雅),但肯定可以使事物看起来漂亮,实际上可以让你对整个事物进行更细粒度的控制。边框图像也能做到,但更复杂一些。
我知道,又是一个回复,但实现这种 CSS3 效果的最简单方法(尽管同样也有一些缺点)是将你的“阴影”元素(应用了 box-shadow 的元素)包装在一个具有 overflow:hidden 设置的父元素中。这有几个很大的缺点:1)如果你知道对象的尺寸,这更容易做到,而这并不总是可能的;2)你需要添加额外的标记,这是一件很麻烦的事情。不过,你可能会发现自己处于已经存在额外标记的情况,对于像导航元素这样的东西,你更有可能知道一些尺寸。这种方法的好处是它也能很好地降级,而额外的背景图像或自定义图形处理可能无法做到,而且生成起来也更加耗时。
感谢 Clemens,你今天让我高兴极了:)
阴影导致页面底部出现间隙,而该页面应该是 100% 的高度。我注意到阴影是原因,但没有想到要反转 Y 轴。好发现。
它确实在 IE 中有效。Gmail 不使用 PNG 图像作为其聊天框设置弹出窗口的阴影,但阴影在 IE 和 Firefox 中显示相同。
该怎么办?
它在 IE 7 和 8 中不起作用。
有没有办法让用户在将鼠标悬停在框上时实现相同的效果?
为什么不直接使用伪类呢?
这取决于使用它的 HTML 标签,但它应该有效。我将其用于滚动输入按钮(我没有使用阴影效果,而是使用颜色更改效果)。
啊,inset 是实现内部阴影的方法。我试图使用负像素值,想知道它是否有效。感谢 Chris,你是救世主…;);)
如果在全局范围内使用 CSS 盒阴影,并且出于某种原因需要在一个特定的子类上取消效果,只需使用
.class {
-moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;
}
使用下面的代码,您可以在 IE 浏览器中实现 CSS 阴影。
两侧(右侧和底部)的阴影
.shadow-ie {
filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=’#000000′);
}
IE 浏览器中所有侧面的阴影
.shadow-ie {
filter: progid:DXImageTransform.Microsoft.Shadow(color=’#ece8e8′, Direction=45, Strength=3)
progid:DXImageTransform.Microsoft.Shadow(color=’#ece8e8′, Direction=135, Strength=3)
progid:DXImageTransform.Microsoft.Shadow(color=’#ece8e8′, Direction=225, Strength=3)
progid:DXImageTransform.Microsoft.Shadow(color=’#ece8e8′, Direction=315, Strength=3);
}
根据您的页面背景选择您的阴影颜色。
谢谢 sriram! :-)
有没有办法为框的一侧创建内嵌阴影?
请记住,它应该也适用于纹理背景。
你碰巧找到这个问题的答案了吗?
我想知道同样的事情,Damir.. 你发现了吗?
我也在寻找这个问题的答案。
您可以使用负值扩展阴影以隐藏其他边。此代码仅在框的左侧创建 5px 黑色内嵌阴影
只需在值中重复所需的阴影宽度即可获得效果。您可以使用多个阴影来获得内嵌阴影,例如仅用于顶部和底部。此代码将在顶部和底部创建一个 10px 红色内嵌阴影
尝试将溢出隐藏解决方案应用于一侧阴影或一侧无阴影
http://starikovs.com/2011/11/09/css3-one-side-shadow/
问题:所有支持其中一个阴影 CSS 的浏览器是否也支持 rgba 符号?
我看到 Google 图片使用 box-shadow,颜色部分为 rgba(0,0,0,0.65) - 为阴影添加一个不错的透明效果 - 我想这样做 - 但是 - 我需要提供一个“备用颜色”吗?还是可以安全地假设如果浏览器“足够好”以支持阴影,它也一定会支持 rgba?
谢谢。
我在 http://leadtheme.com 上试了一下,但它看起来不像我想要的那样。也许我会尝试那个透明度的东西。现在我只能使用 png :( 。感谢代码…我已经在模态框等上使用了它,如果你使用正确的颜色,它效果很好 :)
当我看到 TextMate 片段的下载时,我真的很兴奋,但它不起作用。它说它已损坏(而且它似乎这样说是因为片段的内容是该片段本身,但具有完整的 HTML 标记,就像它在这个页面上显示的那样)。
很有帮助。但 IE 呢?
你的内嵌阴影示例在 Safari 中不起作用。在你的代码之后,示例是空的!检查一下,这是这篇文章中的最后一个示例。
-webkit-box-shadow:inset 0 0 10px #000000;
只需添加以下内容以使您的边框更圆
-moz-border-radius: 15px 15px 15px 15px;
希望它对某人有帮助。
这很棒,但 IE 会永远跟上吗?似乎总有一些极端的变通方法。真是令人恼火!
有没有办法让它在图像上工作?
Myk:只需将一个 DIV 放在你想要内嵌阴影的图像前面,绝对定位它,并使用 z-index,你就会得到一个带有阴影的漂亮切口效果。我刚刚在一个我想要那个切口效果的谷歌地图上做到了。
谢谢 Mac!那个适用于图像的内嵌阴影.. :)
非常有帮助,我直接去我的代码中执行更改!
它在所有浏览器中都能工作,除了主要的那个 :) IE
好消息是 IE 的浏览器市场份额低于 50%,它不再是主要浏览器了 :D
非常感谢,这很棒!
非常感谢,你能帮我把阴影放在标题底部的右侧吗?我可以把它放在右边或左边…但不能同时放在两边…
很多评论和人都担心缺乏 IE 支持。网页不需要在每个浏览器中看起来完全一样。我知道这可能令人震惊,但随着设备、版本和变体的不断扩展,是时候摆脱网页像打印布局一样静态的想法了。
所以底线是,如果你想让阴影在每个 IE 版本中都显示相同,就需要切割图像、使用填充、边距、背景图像、position:absolutes 和 z-indexes。没有简单的解决办法,否则就使用 css3,现代浏览器会获得现代体验,而其他人则不会知道他们错过了什么。
这看起来很棒!如何才能在框的左右两侧创建阴影,而不是顶部和底部?我想从页面的顶部到底部获得一个白色框,并在两侧有阴影。有可能吗?
不错的文章,感谢分享。IE 中的 Css 阴影效果示例在此处 http://discoverweb.info/css-shadow-for-ie.html
非常感谢这篇文章.. 它在 IE 中也能工作
这不起作用。
令人惊奇的是,即使是 IE8 仍然很糟糕。
关于 IE 的支持:我发现更令人惊奇的是,仍然有开发人员在寻找和发现像这样的页面,却没有认真阅读评论。
哦,我知道 IE 支持它。它只是仍然不简单,这很令人惊奇。
此外,IE 中的阴影仍然会弄乱具有阴影效果的元素中输入的游标对齐方式,因此它仍然很痛苦…而且略有错误。
只是看起来很落后。
有没有人找到一种方法来修复 IE 6-8 使用过滤器通过盒阴影创建时出现的游标对齐问题?我真的很感谢一个解决方案(或一个技巧),因为它使用图像重新创建将是一件很痛苦的事情。
有没有办法使用带有内阴影的 div 来“包裹”嵌套的 div?并且使阴影在嵌套的 div 上保持半透明?
像这样?
http://www.integralhealth.ca/aboutUs/index.php
该网站使用 JPG,阴影已融入图像。有没有办法只使用 CSS 来实现内联阴影?
以我自己的新手方式,我尝试了以下代码。当然,它不起作用。
实际上很简单,使用伪元素。我在我的开发博客上写了一篇文章来介绍它。http://netuncovered.com/2011/06/css-pseudo-shadows/
谢谢
我知道这种效果,但直到今天我才知道可以用它来实现表格!我的新网站仍在开发中,但进展真的很好。我很高兴我们可以用 CSS 做这么多事情。;O)
盒子阴影已从 css3 规范中删除
你指的是“从 CSS3 规范中删除”是什么意思?你能提供一个关于这条新闻的链接吗?“box-shadow”只是在 CSS3 中添加的,他们肯定不会这么快就删除它吧……
如果你发布这样的评论,最好引用你的信息来源。
经过一番研究,看起来它在 2010 年 1 月/2 月左右被删除了(我在各种博客和文章评论中发现了这一点),然后在 2010 年 4 月左右重新添加了“inset”选项(http://ajaxian.com/archives/get-some-box-shadow-going)。
嘿。有人可以帮我吗?我想让我的盒子带着阴影环绕它,而不是只有两个边。CSS 可以做到吗?
嗨 Sunny,
听起来你需要使用没有 X 或 Y 偏移的 box-shadow,在指定 box-shadow 时,四个元素如下完成
box-shadow: ;
所以,尝试使用类似的东西
box-shadow: 0px 0px 5px #666;
另一个选择是使用 RGBa 或 HSLa 作为颜色,例如
box-shadow: 0px 0px 5px hsla(0,0%,0%,0.5);
当然,现在,请记住使用 -webkit 和 -moz 前缀复制你的 CSS3 行……
呃.. 对不起,我的评论中的一些部分被删除了。正如 Chris 的文章中所见,box-shadow 的通用格式是
box-shadow: (x 偏移) (y 偏移) (模糊半径) (颜色);
嘿 Andre,感谢你的信息。
如何在 EI 中获得相同的效果?我目前的代码是
-ms-filter: “progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=’#000000′)”;
-filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=’#000000′)
但这只是针对两侧。我应该将 Direction 设置为 0 吗?
如果我想要整个盒子的阴影怎么办?
我尝试更改 Direction,但没有……效果
请回复,我正在等待
我想告诉你我是你的忠实粉丝
所以,我想知道是否可以使它没有主体背景颜色,只有内阴影。这有可能吗?
是的,这是可能的.. 只需将 background-color 设置为“transparent”并在 box-shadow 中添加单词“inset”。例如
body {
background-color: transparent;
box-shadow: inset 0px 0px 5px #666;
}
对于 IE 6、7、8、9,你可以这样做
HTML
你好
CSS
.wrapper {
position: relative;
filter: progid:DXImageTransform.Microsoft.blur(pixelradius=2.0, makeshadow=’true’, ShadowOpacity=.50);
background-color: #fff;
}
.wrapper-inner {
border: 1px solid #ccc;
background-color: #fff;
position: relative;
}
对于 FF、Chrome、Safari
HTML
你好
CSS
.wrapper {
position: relative;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
-moz-box-shadow: 0 1px 3px #000000;
-webkit-box-shadow: 0 1px 3px #000000;
box-shadow: 0 1px 3px #000000;
}
.wrapper:after {
display: block;
visibility: collapse;
content: ” “;
clear: both;
font-size: 0px;
}
.wrapper-inner {
border: 1px solid #ccc;
background-color: #fff;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 3px;
position: relative;
}
效果相当不错,IE 6 需要稍微调整一下,但我认为你们可以解决这个问题。而且,它降级为带边框的盒子。还不错。
这里还有一个外部辉光的东西
HTML
CSS
尝试使用内阴影来实现环绕一组滚动图像的 div。但图像出现在阴影之上。有什么建议吗?
我的意思是,不用 z-index 分层;我有链接。
在你的 css 文件中使用 position:absolute
然后尝试使用 z-index 可能显示你的链接激活.. 保持你的内容完整
将你的图像设置为 div 的背景,然后将 box-shadow 应用于同一个 div。现在阴影将覆盖图像。你也可以使用 border-radius。效果很好。
这适用于表格吗?我的意思是.. 我不会把它放在 div 里.. 只是放在表格里。
我不想要底部的阴影。
我该怎么办?
请告诉我。
CSS 阴影方法 CSS 内阴影
非常有趣的一篇文章,是的,css3 很有趣,但 OMG IE 总是很麻烦,即使是 IE9 也必须添加某种元标记,这样浏览器才能像什么一样渲染页面
天啊,我希望微软不要把 IE 这样的灾难带入 web 世界!
问题是,我的所有内容都包含在一个页面包装中,该包装也有一个名为 group 的类。如何编写代码,使代码环绕我的页面包装而不将其完全覆盖。例如,我想让阴影看起来像这个页面的样子。
哇,首先,这个网站真的真的很棒。干得漂亮。
现在,我看到每个网站都在使用字体内阴影,我想知道如何在 IE 中也能看到它。
非常感谢……
很棒的网站,现在是我的最爱:)
感谢你简单明了的描述。
问候!
嗨,各位,我在阴影方面遇到了问题
我有以下页面
header
元素有阴影属性,但是,当我将背景渐变应用于div
元素时,它会溢出阴影。如何解决它?
这是 CSS
这些关于 IE 的讨论都是什么 - 是一个网页浏览器,还是其他东西?
你的文章非常有用。
非常感谢
使用 javascript 调用 modernizr
处理所有浏览器的差异性。
对于 ie 8
-ms-filter: “progid:DXImageTransform.Microsoft.Shadow(Strength=5, Direction=140, Color=’#cccccc’)”;
对于 ie 7 及更低版本的浏览器
filter: progid:DXImageTransform.Microsoft.Shadow(Strength=5, Direction=140, Color=’#cccccc’);
但不喜欢阴影效果 :(
它在我的网站上运行良好。我正在寻找一些东西来帮助我丰富图片,而阴影效果就做到了。
不错的选择。
非常棒的阴影效果。添加到我的框中。
我已经在 IE 9 中通过 JavaScript 设置了填充为 0,如下所示,但填充没有设置,文本下方出现额外的空白。它是在 JavaScript 中制作的用户控件,我正在网站中使用该用户控件。请帮我。
selectBox.options[newIndex].style.padding=0; // 在 IE9 中不起作用
感谢和问候
Kapil Gupta
印度
感谢 IE,您可以使用以下代码,您需要将 PIE 文件放到 css 文件夹中,然后它将在 IE 中正常工作。
以下是您可以查看所有浏览器黑客代码的链接。
http://webdesigning-tricks.blogspot.com/
此圆角也将在 IE 中工作
.rounded-corners{border: 1px solid #fff;
padding: 60px 0; margin:20px;
text-align: center; width: 200px;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius: 8px;
-webkit-box-shadow: #666 0px 0px 0px;
-moz-box-shadow: #666 0px 0px 0px;
box-shadow: #666 0px 0px 0px;
background: #333333;
background: -webkit-gradient(linear, 0 0, 0 bottom, from(#333333), to(#cccccc));
background: -webkit-linear-gradient(#333333, #cccccc);
background: -moz-linear-gradient(#333333, #cccccc);
background: -ms-linear-gradient(#333333, #cccccc);
background: -o-linear-gradient(#333333, #cccccc);
background: linear-gradient(#333333, #cccccc);
-pie-background: linear-gradient(#333333, #cccccc);
behavior: url(PIE.htc);}
Kasturi
网页设计师
我给出了我问题的答案 :)
我正在使用 ASP.net 开发应用程序。我的应用程序是旧版本的,所以没有 designer.cs 文件,只有 resx 文件。现在我在 ASP.net 新版本中创建了具有 designer.cs 文件(包含控件定义)的文件,这样做会在 IE 9 中自动删除填充。
感谢和问候
kapil gupta
印度
非常感谢您提供的教程,克里斯!我终于知道为什么我的盒子阴影在 Chrome 和 Safari 中不起作用了。
我只需要添加 webkit 属性,因为 Chrome 和 Safari 都运行在 webkit 引擎上。
很酷的 CSS 东西,但它在 Internet Explorer 中不起作用。
我只想让阴影出现在一侧(例如,只有右侧)。
我们如何实现这一点。
我也想知道这一点,但看起来你无法用 CSS 做到。
我计划使用重复背景图像来做到这一点。
感谢这篇文章,非常有用!
嗨,这是一个很棒的网站。我在此学到了很多东西。我试了一整个晚上,但我无法弄清楚为什么这个盒子阴影在我的测试网站上的图像周围显示了额外的空间。 http://deebroughton.info/
我尝试了许多不同的阴影,所有阴影都显示图像周围的相同空间。我试图强制填充和边距为零。我已经检查了图像本身,并且没有空间。我做错了什么?
我使用带此内容的 div 类
.myshadow {
padding:0px 0px 0px 0px !important;
margin:0px 0px 0px 0px !important;
background-color: transparent;
box-shadow: inset 0px 0px 5px #666;
}
嗨,克里斯!
只是一个想法......
您是否可以在代码块中添加一个“复制”链接,以便更容易选择和复制。
我一直是你的粉丝..感谢你的辛勤工作!
Dale
我仍然认为 IE9 做得不好。这是我的 CSS 代码。
看看 FF、Chrome 和 IE9 的区别。
-moz-box-shadow: 0 12px 145.7px 9.3px rgba(0,0,0,.59);
-webkit-box-shadow: 0 12px 145.7px 9.3px rgba(0,0,0,.59);
box-shadow: 0 12px 145.7px 9.3px rgba(0,0,0,.59);
IE 中的总模糊半径不同
我经常在谷歌搜索一些问题时看到你。看看你的页面,老兄,简洁而漂亮..而且从上到下浏览这个页面也很棒。顺便说一下,我在 lynda 上从你那里学到了 wp 主题开发的 abc..上帝保佑你。
有没有办法只在 3 个边上做内嵌盒子阴影?
你能把那个效果放到一个盒子里,然后用它作为悬停,添加一些过渡,那就太棒了!
大家好,非常棒的提示。我正在寻找一种方法来实现内嵌盒子阴影,但只在元素的底部?有什么想法链接吗?谢谢
抱歉,我应该添加吗?
“带模糊”。
哎呀,说早了。抱歉各位。
box-shadow:inset 0 -10px 10px 0 #000000;
我们如何在 div 的所有四边添加阴影?
请尽快回复。:)
.shadow {
-moz-box-shadow:inset 0 0 10px 10px #000000;
-webkit-box-shadow:inset 0 0 10px 10px #000000;
box-shadow:inset 0 0 10px 10px #000000;
}
所以,要使它们都均匀,关键是将前两个数字保留为“0”,并将数字用于其余部分。
试试这个网站 http://css3generator.com/ 来根据您的喜好进行自定义
希望这有帮助
ie8 盒子阴影太烂了!
您是如何设计此网站的标题框的,其中写着“CSS TRICKS”框和垂直文本?您能指导一下吗?
很棒的文章。谢谢。如何使盒子左侧、右侧和底部有阴影,但顶部没有阴影?
我的意思是盒子的三侧(左侧、右侧、底部)会有阴影。
请帮我…
不错的网站,伙计们,信息很好。
谢谢你,克里斯,你给了我制作博主平台主题的灵感。它对我来说真的很有用。真诚的问候,婆罗洲模板管理员。
哦,天哪,创建阴影效果太容易了,我一直在努力使用透明阴影图像。克里斯,请分享你鼠标悬停时出现的动画脚本。
嗨,克里斯,
盒子阴影属性在我的手机网站上不起作用
该怎么办?
感谢您的信息。去死吧,IE。
好东西...这正是我想要的!
哇,它有效,谢谢。
嗨,克里斯,我真的很喜欢这个教程,学到了很多东西。但我遇到了一个问题,所以我想知道你是否能帮我。我遇到的问题是,当我在一个空 div 中应用阴影时,我在 IE 6 中得到一个纯色背景。我还尝试使用 CSS3Pie,它在 Firefox、Chrome 和 IE 中运行良好,但它只是用颜色填充 div,即使没有设置背景颜色。我尝试将背景设置为 none,但它仍然无法正常工作。所以,如果可能的话,请帮我解决这个问题。
谢谢,
Ali
它有效。你太棒了。就这样做,继续帮助人类。
我如何将阴影放在网页的左右两侧?
嗨……这对我这个新手来说真的很有帮助
您可以使用以下代码将阴影放在左侧和右侧。
再次感谢您提供的另一个很棒的教程,Coyier 博士。如果可以为 IE 平滑地降级阴影,那就太好了。在我们继续抨击 IE 的同时,我们也会关注这类东西。
您好!非常感谢您在显示 IE 的框阴影方面的指导。它运行良好,但由于我使用的是背景图像,所以我无法设置背景颜色。当我使用 IE 的 filter 过滤器和背景图像时,它会将整个容器显示为阴影……没有背景图像。您能告诉我如何使这些元素一起工作吗?谢谢。
对于我正在进行的项目,使用最后一个示例使阴影在子菜单的底部可见,并且还使用 css3pie 脚本使其在 ie7,8 上运行。感谢 Chris。您是最好的。
谢谢。
如何在一个元素上设置内外阴影?
是的,请,我也想知道如何在同一个元素上制作内外阴影?
关于“…如何在一个元素上设置内外阴影…”
我在以下位置找到了解决方案
http://stackoverflow.com/questions/8556604/is-there-a-way-to-use-two-css3-box-shadows-on-one-element
您可以用逗号分隔阴影
box-shadow: inset 0 2px 0px #dcffa6, 0 2px 5px #000;
根据我的经验,只有当我将相应的 div 设置为“position: relative”时,框阴影属性才能工作。是这样吗?这很不方便,因为我在同一个 div 上使用 corner-radius,而 Chrome 有一个错误,导致它忽略了如果相应的 div 设置为“position: relative”的 corner-radius 属性,因此我似乎不得不在这两者之间做出选择。不幸的是,这已经在 https://bugs.webkit.org/show_bug.cgi?id=72619 报告过,但仍然没有解决。
非常好的工作!但还有一件事:您能告诉我们如何在 IE 7+ 上使“仅单侧”示例工作吗?
如果 IE 在阴影方面困扰您
http://robertnyman.com/2010/03/16/drop-shadow-with-css-for-all-web-browsers/
http://placenamehere.com/article/384/css3boxshadowininternetexplorerblurshadow/
您可以使用 IE 的条件 HTML 和这些小技巧来解决它,并使用您的技巧来保持其他任何浏览器的内容。
不要怪我,这有点难看。
真的很有帮助…
谢谢
我正在创建一个红酒晚宴页面,并希望直接在图像标签上使用内联样式。我找到的所有语法都讨论了外部样式表,而我需要它成为内联样式,以便我可以将 HTML 粘贴到我的电子邮件营销工具中。但是,我的图像标签已经使用了一个样式。我可以使用多个吗?
ColorZilla Firefox 插件的 Ultimate CSS Gradient Generator 在提供预览和代码生成方面做得很好,包括 IE 9 支持。
好东西……这正是我要找的!谢谢
非常非常有帮助
非常感谢!
非常有用的知识!
非常感谢!!
哇!非常适合我的项目。感谢您,我可以添加不在我的元素上的阴影框,并且不用担心 IE 问题。
这篇博文包含一些非常酷的框阴影:39 种用 CSS3 框阴影做出的荒谬事情。
另外,如果您有兴趣,还有一个 github 存储库。
有人能告诉我如何在 IE7 中使用 CSS 加载 png 图像吗?
我尽力了,但什么也没得到。我尝试过 filter 方法,但它对 ie7 不起作用
请帮忙…
这在 IE7 中有效。
<div id=”oFilterDIV”
style=”position: absolute;
top: 50px;
left: 10px;
width: 240px;
height: 160px;
padding: 10px;
background: yellowgreen;
filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=5, OffY=5, Color=’gray’, Positive=’true’)”>
这是 div 内容。</div>
非常感谢这篇文章.. 它在 IE 中也能工作
适用于所有浏览器,包括 IE。
IE 仍然无法提供完整的体验,但总比没有好!
感谢您的脚本。我更喜欢使用 CSS3 PIE “插件”,但了解和理解不同的解决方案还是很有帮助的。
@Mottie,感谢您提供的链接。
也许我做得太多了,我可能遗漏了一些显而易见的东西,但我无法在 Android 上获得实心的框阴影(没有模糊)(HTC Incredible [2.3.4] 和 Motorola Droid 1 [2.2.3])。
这不起作用
将模糊设置为 1px 是我能获得的与实心最接近的值,并且仍然可以在 Android 设备上呈现
希望这对其他响应式开发人员有所帮助!
嗨,伙计们,
有人知道如何在 IE 中实现与“text-shadow”属性相同的效果吗?
非常感谢。
我已经在 Google 上搜索了好几个小时,这让我很抓狂……
我已经将一些缩略图的样式设置为具有 2 个点的半径,带有一个框阴影和一个渐变边框,填充以看起来像一张宝丽来照片。它在 Firefox 中运行良好,但我也想添加一个内嵌阴影或内嵌边框,使框架图像看起来稍微内嵌。我只能让内嵌阴影显示在边框上,而不是在边框内部。也许不可能,但我看到了这篇旧帖,我想也许,也许,有人会知道解决方案。这是我正在使用的代码(没有内嵌阴影)
为了我以及其他人的启迪,如果你能解决它,请这样做 :)
谁在乎它是否在 IE 上运行……只有 9% 的人使用 IE……我们是开发人员,用它来测试网站 :P……IE 一直都很烂
是的,IE 很烂。但你关于使用 IE 的人所占比例的说法是错误的,Bilal。我建议您查看以下内容
浏览器统计数据链接
因此,在目前的情况下,仍然需要为出色的用户体验提供支持。
Windows XP 很烂。完全烂透了。它已经过时了。
微软将在明年停止支持它——所以做好心理准备。时间快到了。
我喜欢您的网站!哦,它应该与 IE 9/10 一起使用?我的网站将面向未来,而不是过去。
谢谢!我在新设计中使用了这段代码。:)
如何让左右两边有阴影,而顶部和底部没有阴影?谢谢
不幸的是,目前 CSS 无法为 box-shadow 属性指定宽度和高度。它的工作方式与边框相同,环绕着应用它的元素的外边缘。
我建议的解决方法是,在容器 div 中创建 3 个 div,水平堆叠为块。使顶部和底部 div 的高度很小,并将阴影添加到中间的 div。
如果您的 z-index 配置正确,顶部和底部 div 将有效地隐藏阴影。您可能需要稍微调整 z-index 来使它生效。
希望这有帮助!
当我使用这个 box shadow css 时
box-shadow: 1pt 1px 4px rgb(165, 165, 162);
它在我的盒子右侧和底部产生阴影,但也有一些薄薄的阴影在顶部和左侧。我不想要这样。我只想要盒子右侧和底部的阴影。
如果我将模糊值 4 更改为 1,问题就解决了。但我不想更改模糊值。我希望保持为 4。
有人能帮我吗?
我通过 div 标签在我的网站上的一些图像上添加了投影阴影。出于某种原因,我在图像底部和阴影之间发现了一个白色空白边距。换句话说,它使我的图像看起来像带有大型白色边框的宝丽来照片。
此外,阴影延伸到图像右侧很远。
这是我使用的代码
.one-edge-shadow {
-webkit-box-shadow: 0 8px 6px -6px black;
-moz-box-shadow: 0 8px 6px -6px black;
box-shadow: 0 8px 6px -6px black;
}
你们这些聪明的、经验丰富的人可以帮帮我吗?
它支持 IE 6、7、8 和 Safari 浏览器吗?
谢谢分享...
我将用在我的设计中。
这些阴影真的很酷,但我喜欢单边阴影和内阴影,感谢这些关于阴影的酷技巧。
你好,
我真的很想知道您在文章中使用哪个插件来为代码片段设置样式。谢谢!
谢谢 - 非常清晰!
感谢您对这件事的帮助。我试图将我漂亮的 Photoshop 处理的图像选项卡转换为使用 HTML 的完全 CSS 文本框。我想这有助于我的 SEO,但我一直在努力尝试获得正确的外观。但是这个教程帮助我实现了所需的 3D 效果。
很棒的网站 :)
感谢 Chris 给出的精彩技巧。
在您网站的先前版本中,您在一些文本框上使用了磨砂金属背景。您介意我在我正在开发的(非商业)网站上使用它吗?再次感谢。
我想为 css div 中的 png 图像创建投影阴影。有人可以帮我吗?
嘿 Chris ... 我想对您所做的所有出色工作说声谢谢!这只是一条关于这篇文章的通用评论...但天哪,我经常使用您的网站作为参考,并从您出色的技术中学习了很多东西 :)
只想让您知道我是您工作的忠实粉丝!干杯 - jM
嘿 Chris,你能帮我使这个阴影 css 在 IE9 中工作吗?我似乎无法使其工作,并且 IE9 也将所有文本设置为粗体。感谢任何能帮助我解决此问题的人。谢谢
http://pastebin.com/vBw71XDi
这是测试网站,可以看到 Chrome、Firefox 和 IE9 的区别
http://814media.com/gomobile/video-test/
我刚刚尝试了这种阴影效果,它有效。感谢您分享。
Chris,我们可以将 box-shadow 和 inner-shadow 都应用于一个元素吗?我认为我们不能。我认为我们需要嵌套元素或类似的东西来模拟那种外观和感觉。
谢谢
Chandra
Chris,
我遇到了一个问题,即 box-shadow 在 Mac OS X 10.8 上的 Safari 6.0.2 (8536.26.17) 和 iOS 6.0.1 上的 Safari 中不起作用。我必须明确地为 Spread 指定 1px 值才能使其生效。
Mac OS X 10.8 上的 FF 16.0.2、Chrome 22.0.1229.94 和 Opera 12.02 在没有 spread 的情况下可以正常工作,iOS 6.0.1 上的 Chrome 和 iOS 5.1.1 上的 Safari 也是如此。
毫无疑问,我没有阅读更新的规范,因此我的 css 由于这一点而变得混乱。
真的很棒...
谢谢
Chris,
我在 background-attachment:fixed; 属性上遇到了问题,该属性在 Mac 浏览器中不支持,网站网址为:bestblinds.co.nz 请提供任何解决方案。
谢谢
Duni
非常感谢您发布此内容。- 非常清晰易懂!
需要帮助..
如果我使用 float 属性,为什么阴影在左右两侧被切断..
非常感谢这篇文章。我不是最擅长 CSS 微调的人,但这篇文章正是我需要的,它为我节省了一些时间。
谢谢,并继续努力!
这可以用一行完成。
并在任何浏览器中工作。我没有在 IE6 上尝试,但在其他浏览器上有效
如果每个人都知道这在 IE6 中不起作用,并且 CSS3 不受支持,为什么要费心创建不会影响网站功能的解决方法呢?当然,最好让人们看到更新的浏览器支持更新的功能,从而提供升级的理由。
仍然停留在石器时代的人只会认为*你的*网站坏了,或者设计师没有做好自己的工作!
但是,在设计时稍微考虑一下,这些 css3 技巧如果不受旧浏览器的支持,将很好地降级,不会影响网站的功能和布局。
嗨 Chris,
box-shadow inset 属性支持不同的颜色吗?我尝试了,但无法得到它。请帮帮我。
谢谢,Prabhu
它对我来说运行良好
我试过了,它有效,我对单边感兴趣,
感谢您分享
我一直参考这个页面!谢谢!
帮我摆脱 Jam :) 非常感谢。很棒的 CSS 技巧网站。
Bhu1
我不得不说,您的网站和教学风格是我在互联网上见过的最好的。每当我需要 CSS 帮助时,您的网站都是我首先访问的网站。谢谢!
这个网站是我遇到的最不可思议的网站,它使用了大量的 css3。太棒了!
谢谢!这对我有用。
我该如何将它应用到我的 CSS 样式表中?#StillNewWithCSS
顺便说一句,我喜欢你的网站。
我有一些元素只有底部有阴影。我已经更改了 box-shadow,但我需要在这里更改什么才能在 IE8(和更早版本)中获得相同的效果?我没有 IE8 可供测试。
我做到了!有没有办法解决边框半径的边缘不均匀问题?我讨厌角落不均匀的样子……
http://arcrammer.zymichost.com/cousus/
^ 我要说明的是 ^
filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=’#000000′);
-ms-filter: “progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=’#000000′)”;
对我来说,这个解决方案有效
.views-row {position:relative;}
.views-row.active:after {-webkit-box-shadow: inset 0 0 0px 8px #FF7777; box-shadow: inset 0 0 0px 8px #FF7777; content: “”; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
内阴影看起来像 3D,我学到了很多新东西,扩展了我对各种开发的知识。谢谢!
在 IE8 上不起作用,正在等待解决方案
谢谢,你在这里有这段代码,节省了我很多时间。正是我想要的!
感谢你为我澄清了这一切……另外,当我读到这些技巧时,每个人似乎都遇到了 IE9 的问题!为什么他们要那么难,现在来吧,有人请解释一下!?:D
我已经停止尝试让这些效果在 IE8 中正常工作了——尝试为那个垃圾软件做出改变不值得。
任何仍在使用 IE 的人,都应该为自己的愚蠢负责!
尊敬的 Chris 先生,我想成为像你一样的 CSS 专家,你能告诉我从哪里开始学习,以及你学习时研究了哪本书吗?
请,这是一个请求
如何在菜单栏背景上应用滑动类型?
大家好。
box-shadow: inset 在 IE 8 中工作吗?我也使用了 PIE.htc,但在 IE8 中 inset box-shadow 不起作用。你能给我一些关于这个问题的建议吗?
我写了以下 css
moz-box-shadow: inset 3px 4px 9px -4px #CECECE;
-webkit-box-shadow: inset 3px 4px 9px -4px #CECECE;
box-shadow: inset 3px 4px 9px -4px #CECECE;
提前感谢,期待您的建议。
感谢和问候,
Sanjeev
大家好!这里有一个示例,其中内嵌 Microsoft 阴影仅在 Internet Explorer 5.5 到 8 中有效。
不需要 JavaScript,但它使用了 Microsoft 的 ActiveX CSS。
样式说明
只需将下面的代码复制粘贴到记事本中,然后保存为 .html 文件。在 Internet Explorer 中测试。
请注意,这段代码只会在 Internet Explorer 5.5 到 8 中显示!
一个快速问题……是否可以使用这种类型的 css 效果来围绕 YouTube 视频嵌入?
我知道侧边阴影可以在代码中直接调节,但如何才能使其透明呢?当有背景图像时,这一点非常重要。
box-shadow: 5px 5px 5px rgba(68,68,68,0.6); 对 IE 和 Safari 浏览器支持吗?
以下是使它在所有浏览器(如 IE、Chrome、Safari、FireFox 等)中生效的方法!
方法如下
你需要添加看起来像这样的浏览器前缀:
-webkit-box-sha...
这是一个示例
我想在使用 JavaScript 更改输入范围的值时,为某个对象添加一个阴影,有人可以帮助我吗?
我在最新版本的 Chrome 中发现了一个 bug,涉及大型 box-shadow 内嵌。浏览器和滚动开始滞后,如果你使用超过 200 像素或更长,它几乎完全崩溃。很糟糕。希望这可以避免一些头疼 http://hackingui.com/front-end/chrome-box-shadow-bug-that-crashed-our-site/
你能告诉我如何获得一个在左边缘和右边缘下方更大、在中心下方更细的阴影吗?
三面没有阴影。
有可能吗?
您好。非常感谢。
问题:如何只为左侧文本框添加内嵌阴影?
有人知道如何在不指定高度的情况下给一个框添加阴影吗?我有一个带有 Feedburner 链接的框,每次链接到的博客发布新文章时,它的大小都会不同。“Height: auto;”不起作用,它只会将整个内容变成背景颜色。
也许可以设置一个 min-hieght: value?
大家好!
我只想知道为什么我在 Gmail 中无法使用 box-shadow(而在其他域名中有效)。
它是被屏蔽了吗?为什么?
PS:我可以在我的 html/css 中指定这个规则吗?
如果用户不是 Gmail,那么使用 box shadow。
否则,在 div 的背景中使用灰色。
这可能吗?
嘿,Peitro!电子邮件中的 CSS 往往很棘手……真的很棘手。这是因为电子邮件客户端——比如 Gmail——对它的支持程度不同,而且这些支持差异很大。
在处理电子邮件中的 CSS 时,我经常会参考 Campaign Monitor 的 CSS 指南
https://www.campaignmonitor.com/css/
看起来 Gmail 属于不支持
box-shadow
的那些客户端https://www.campaignmonitor.com/css/box-model/box-shadow/