CSS3 text-shadow介绍

对页面来说文字就是灵魂,因此美化文字的工作必不可少。除了加载漂亮的字体外,还可以用text-shadow文本阴影给枯燥的文字增加美感。

按例先看一下基本参数:

x-offset / y-offset:必须的参数。水平和垂直阴影的偏移量。正值表示往x轴y轴正方向偏移(即往右往下)。负值反过来往x轴y轴反方向偏移(即往左往上)。

blur-radius:阴影模糊半径。该参数可选,默认值为0表示不模糊,值越大,阴影的边缘就越模糊。值不能为负数。

color:阴影颜色。该参数可选,不设就取浏览器的默认色。因为各浏览器的默认色不同,推荐还是设一下,设一下又不会怀孕。

完整的语法box-shadow: [x-offset y-offset blur-radius color]+ 熟悉正则表达式的能看懂后面+号表示可以设多个阴影。参数比较简单,是box-shadow的子集,权威请参照W3C。我们举几个例子来试试美化文字。

虽然现在流行扁平化,但拟物化的3D效果仍旧很普遍,凸起的文字能体现出立体感。

body {
    font: 4em/1 Rockwell,"微软雅黑",serif;
    color: white;
}
.font3d {
    padding: .25em;
    background: #58a;
    text-shadow: 0 1px hsl(0,0%,85%),
                 0 2px hsl(0,0%,80%),
                 0 3px hsl(0,0%,75%),
                 0 4px hsl(0,0%,70%),
                 0 5px hsl(0,0%,65%),
                 0 5px 10px black;
}

<p class="font3d">CSS3D</p>

代码中文本阴影以Y轴往下1px为单位逐渐变淡,使扁平化的文字显示出3D的效果。最后底部加一次外扩10px的黑色阴影,使3D效果更加逼真。

顺着这个思路还可以将底部黑色阴影去掉,背景换一个色彩,设计出复古风:


.oldStyle {
    padding: .25em;
    background: hsl(0, 50%, 45%);
    text-shadow: 1px 1px black,
                 2px 2px black,
                 3px 3px black,
                 4px 4px black,
                 5px 5px black,
                 6px 6px black,
                 7px 7px black,
                 8px 8px black;
}

<p class="oldStyle">Rock & Roll</p>

设x-offset / y-offset能出现3D效果,不设偏移量,只设阴影半径可以模拟高亮文字效果:

.glow {
    padding: .25em;
    background: #203;
    text-shadow: 0 0 .1em,
                 0 0 .2em;
} 

<p class="glow">Hollywood</p>

凹陷效果的文字会产生一种石刻字的效果。实现方法:先给文字和背景色使用相同的色相和饱和度,但亮度不同。背景色的亮度高,产生浅色效果,文字的亮度低,产生暗色效果。原理是生活中光源总是在我们头上,所以凹陷进去部分接触到的光源偏少会呈现暗色。接着给文字加上白色投影来打亮边缘,使凹陷效果更逼真。


.depressed {
    padding: .25em;
    background: hsl(210, 13%, 60%);
    color: hsl(210, 13%, 30%);
    text-shadow: 0 1px 1px hsla(0,0%,100%,.8);
}

<p class="depressed">Rosetta</p>

将上例文字和背景色的亮度值互换,再将亮边缘投影变暗,就能呈现凸起文字的效果。

.projections {
    padding: .25em;
    background: hsl(210, 13%, 30%);
    color: hsl(210, 13%, 60%);
    text-shadow: 0 -1px 1px black;
}

<p class="projections">Rosetta</p>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我对任何美的东西都会本能地生出一种爱,在CSS的世界里,凡和色彩渐变等沾边的属性都是我的菜。因此box-shado...
    张歆琳阅读 6,685评论 6 33
  • 1、属性选择器:id选择器 # 通过id 来选择类名选择器 . 通过类名来选择属性选择器 ...
    Yuann阅读 1,671评论 0 7
  • 1.CSS3 边框 border-radius CSS属性用来设置边框圆角。当使用一个半径时确定一个圆形;当使用两...
    garble阅读 696评论 0 0
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,350评论 0 11
  • 十二 唐太宗李世民,是大唐贞观之治时期的皇帝,他采言纳谏,广开门路,外结友邦,內施仁政,人民安居乐业,社会歌舞升平...
    静闻鱼读月槐花语阅读 388评论 0 0