CSS实现阴影效果

网页上的阴影效果可以是页面看起来更为立体,美观。那么CSS如何实现阴影效果呢。

CSS实现阴影效果插图

一、CSS实现阴影效果的方法

  • 1、使用text-shadow属性,可以设置带阴影的文本,实现文字阴影效果;
  • 2、使用box-shadow属性,可以将阴影应用于文本框,实现边框阴影效果。

二、box-shadow属性

1、定义和用法

box-shadow 属性向框添加一个或多个阴影。

提示:请使用 border-image-* 属性来构造漂亮的可伸缩按钮!

默认值:none
继承性:no
版本:CSS3
JavaScript 语法:object.style.boxShadow=”10px 10px 5px #888888″

2、语法

box-shadow: h-shadow v-shadow blur spread color inset;

注释:box-shadow 向框添加一个或多个阴影。该属性是由逗号分隔的阴影列表,每个阴影由 2-4 个长度值、可选的颜色值以及可选的 inset 关键词来规定。省略长度的值是 0。

参数值描述
h-shadow必需。水平阴影的位置。允许负值。
v-shadow必需。垂直阴影的位置。允许负值。
blur可选。模糊距离。
spread可选。阴影的尺寸。
color可选。阴影的颜色。请参阅 CSS 颜色值。
inset可选。将外部阴影 (outset) 改为内部阴影。

3、浏览器支持

表格中的数字注明了完全支持该属性的首个浏览器版本。带 -webkit- 或 -moz- 的数字表示使用前缀的首个版本。

CSS实现阴影效果插图2

4、效果示例

1)最简单的用法:只指定水平阴影和垂直阴影

div {
  box-shadow: 10px 10px;
}

效果图:

CSS实现阴影效果插图4

2)为阴影添加颜色

div {
  box-shadow: 10px 10px grey;
}

效果图:

CSS实现阴影效果插图6

3)向阴影添加模糊效果

div {
  box-shadow: 10px 10px 5px grey;
}

效果图:

CSS实现阴影效果插图8

4)卡片

div.card {
  width: 250px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  text-align: center;
}

效果图:

CSS实现阴影效果插图10

三、text-shadow属性

1、定义和用法

text-shadow属性向文本设置阴影。

默认值:none
继承性:yes
版本:CSS3
JavaScript 语法:object.style.textShadow=”2px 2px #ff0000″

2、语法

text-shadow: h-shadow v-shadow blur color;

注释:text-shadow 属性向文本添加一个或多个阴影。该属性是逗号分隔的阴影列表,每个阴影有两个或三个长度值和一个可选的颜色值进行规定。省略的长度是 0。

参数值描述
h-shadow必需。水平阴影的位置。允许负值。
v-shadow必需。垂直阴影的位置。允许负值。
blur可选。模糊的距离。
color可选。阴影的颜色。

多个阴影:

如需在文本中添加多个阴影,您可以添加以逗号分隔的阴影列表。

3、浏览器支持

表格中的数字注明了完全支持该属性的首个浏览器版本。

CSS实现阴影效果插图12

4、效果示例

1)最简单的用法:只指定水平阴影(2px)和垂直阴影(2px)

h1 {
  text-shadow: 2px 2px;
}

效果图:

CSS实现阴影效果插图14

2)为阴影添加颜色

h1 {
  text-shadow: 2px 2px red;
}

效果图:

CSS实现阴影效果插图16

3)向阴影添加模糊效果

h1 {
  text-shadow: 2px 2px 5px red;
}

效果图:

CSS实现阴影效果插图18

4)带有黑色阴影的白色文本

h1 {
  color: white;
  text-shadow: 2px 2px 4px #000000;
}

效果图:

CSS实现阴影效果插图20

5)红色的霓虹发光阴影

h1 {
  text-shadow: 0 0 3px #FF0000;
}

效果图:

CSS实现阴影效果插图22

6)多个阴影:红色和蓝色的霓虹灯发光阴影

h1 {
  text-shadow: 0 0 3px #FF0000, 0 0 5px #0000FF;
}

效果图:

CSS实现阴影效果插图24

7)多个阴影:带有黑色、蓝色和深蓝色阴影的白色文本

h1 {
  color: white;
  text-shadow: 1px 1px 2px black, 0 0 25px blue, 0 0 5px darkblue;
}

效果图:

CSS实现阴影效果插图26

8)多个阴影:在文本周围创建纯边框(无阴影)

h1 {
  color: yellow;
  text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;
}

效果图:

CSS实现阴影效果插图28

发表评论