者 | chokcoco
来源 | https://juejin.im/post/5be1023951882516fd36a38e
最近一个新的项目,CSS-Inspiration,挖掘了其他很多有关 CSS 阴影的点子,是之前的文章没有覆盖到的新内容,而且有一些很有意思,遂打算再起一篇。不过之前小编也发布了几篇关于CSS相关文章不妨一起来回顾回顾:
《手把手整理CSS3知识汇总【思维导图】》
让我们为投影准备一个简单的HTML元素:
然后添加CSS:
输出结果是三个框,通过调用每个框的ID可以很容易地放置阴影。要添加阴影,让我们将属性box-shadow赋予框1:
我们提供三个参数。前两个参数是offset-x和offset-y。两者都确定投影的位置。相对于元素左上角的位置给出偏移量。偏移x处的正值表示将阴影向右引导,偏移y处的正值表示将阴影向下引导。
第三个参数是所需的阴影颜色。尽管这里我们使用elements <div>,但是属性box-shadow可以应用于所有其他HTML元素。
如果想要阴影看起来更逼真,则可以使用blur-radius参数。此参数将设置我们如何给予阴影模糊效果。让我们将其应用于方框2:
注意第三个参数,该值4px调整应用于投影的模糊半径。
如果要调整阴影的大小,我们可以添加参数spread-radius以使阴影扩大或缩小。让我们8px在框2中添加一个半径扩展:
注意参数的顺序。
我们甚至可以一次将多个阴影组合到一个元素中。让框3应用蓝色和绿色投影:
我们可以用参数制作一个向内的阴影inset。参数inset可以写在属性的开头或结尾box-shadow。以下示例使用elements blockquote。
我们还可以添加一些模糊和散布以增强阴影:
使用properties box-shadow,我们可以为所创建的网页提供阴影,从而可以提供良好的3D照明效果。
用CSS3,你可以为文本和元素添加阴影。
表中的数字指定完全支持该属性的第一个浏览器版本。
数字后面的 -webkit- 或者 -moz- 使用时需要指定前缀。
属性 | Chrome | Firefox | Safari | Opera | IE |
---|---|---|---|---|---|
text-shadow | 4.0 | 10.0 | 3.5 | 4.0 | 9.5 |
box-shadow | 10.0 4.0 -webkit- | 9.0 | 4.0 3.5 -moz- | 5.1 3.1 -webkit- | 10.5 |
CSS代码:
<!DOCTYPE CSS>
<CSS lang="en">
<head>
<meta charset="UTF-8">
<title>项目</title>
</head>
<body>
<h1>文本阴影效果!</h1>
<p><b>注意:</b> IE9和更早的版本, 不支持text-shadow属性.</p>
</body>
</CSS>
CSS3 text-shadow
属性应用阴影到文本上.
在简单的用法, 你可以在水平方向设置阴影(2px)和垂直方向设置阴影(2px):
h1 {
text-shadow: 2px 2px;
}
添加一个颜色到阴影:
h1 {
text-shadow: 2px 2px red;
}
显示一个带有黑色阴影的白色文本:
h1 {
color: white;
text-shadow: 2px 2px 4px #000000;
}
下面的例子显示了红色霓虹灯的阴影:
h1 {
text-shadow: 0 0 3px #FF0000;
}
要在文本中添加多个阴影,可以添加逗号分隔的阴影列表。
下面的实例显示了一个红色和蓝色的霓虹灯阴影:
h1 {
text-shadow: 0 0 3px #FF0000, 0 0 5px #F00000;
}
下面实例显示了一个白色文本带有黑色,蓝色和深蓝色阴影:
h1 {
text-shadow: 0 0 3px #FF0000, 0 0 5px #0000FF;
}
CSS3 box-shadow
属性应用阴影到元素上.
在最简单的用法中,只指定水平阴影和垂直阴影:
一个黄色的
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: yellow;
box-shadow: 10px 10px;
}
下一步,添加一个颜色到阴影,对阴影添加模糊效果:
一个黄色的
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: yellow;
box-shadow: 10px 10px 5px grey;
}
添加阴影到 ::before 和 ::after 伪类中, 来创建一个有趣的效果。
<!DOCTYPE CSS>
<CSS lang="en">
<head>
<meta charset="UTF-8">
<title>项目</title>
<style>
#boxshadow {
position: relative;
-moz-box-shadow: 1px 2px 4px rgba(0, 0, 0,0.5);
-webkit-box-shadow: 1px 2px 4px rgba(0, 0, 0, .5);
box-shadow: 1px 2px 4px rgba(0, 0, 0, .5);
padding: 10px;
background: white;
}
/* Make the image fit the box */
#boxshadow img {
width: 100%;
border: 1px solid #8a4419;
border-style: inset;
}
#boxshadow::after {
content: '';
position: absolute;
z-index: -1; /* hide shadow behind image */
-webkit-box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
width: 70%;
left: 15%; /* one half of the remaining 30% */
height: 100px;
bottom: 0;CSS
}
</style>
</head>
<body>
<div id="boxshadow">
<img src="img/fy_indexBg.jpg" alt="Norway" width="600" height="400">
</div>
</body>
</CSS>
本文基于CSS基础,使用CSS语言。介绍了有关CSS阴影效果的应用,从基础的文本阴影入手, 对CSS常见的阴影表示效果都做了一一的讲解。通过一个个实例的演示,实例运行的效果图。希望能够帮助你更好的学习CSS。
想学习更多Python网络爬虫与数据挖掘知识,可前往专业网站:http://pdcfighting.com/
*请认真填写需求信息,我们会在24小时内与您取得联系。