CSS3新增属性text-shadow详解及燃烧的字体实战开发

今天我们有很多程序员在给文本设置样式时,都感觉无从下手。一般有两种情况:

1) 不知道关于文本到底有哪些样式属性;

2) 即使借助开发工具的自动提醒,依然不清楚样式属性的具体意思,以及具体用法。

今天这篇文章,我将带领大家一起来领受CSS3在文本样式应用方面的超强能力。通过精彩的实例,来使大家重新认识CSS3文本样式,真心希望大家通过此篇文章,即使不能做到精通CSS3的文本样式的应用,也会做到熟练应用。

实例: 如何利用CSS3制作燃烧的字体?

以前,如果我们网页上想要显示一个燃烧着的文本,大家的第一反应就是找美工,让美工PS一张图。虽然可以做到,但是这却带来了一个局限性就是,如果想另一段文本也是同样的燃烧着的样式,那是不是又得去找美工呢?再者,多了一张图片,意味着必须多一次服务器请求,这也会对服务器产生一些影响。

CSS3出来之后,让程序猿非常惊喜,我们可以直接利用CSS3的样式属性text-shadow效果来实现同样的功能,再也不用去烦美工了。

首先,我先带着大家熟悉一下,在CSS3中,到底支持哪些关于文本方面的样式属性:

1.  要设置文本,最先想到的肯定就是字体相关的,比如我想要宋体,加粗样式的文本,其实这些就是指的是字体样式。

     CSS3中支持的字体样式如下表所示:

font-family字体定义字体类型,也即使用什么字体
font-style字体定义字体的样式,如normal(默认值)、italic(斜体等)
font-variant字体定义字体大小写。如normal(默认值)、small-caps(小型大写字母字体)等
font-weight字体定义字体粗细,如bold(粗体)
font-size字体定义了字体的大小,如0.8em、10px等
font字体复合类型当然如果觉得一个个设置比较烦,可以直接使用font来设置,font可以包含上面所有的样式
font-size-adjust字体定义是否强制对文本使用同一尺寸
font-stretch字体定义是否横向拉伸变形字体

关于字体的样式,它都是以font为开头的,它是设置文本样式的基础。

2. 当我们照着上面的样式设置了文字的基本样式,但是我现在想给一段文字设置下划线,或者让文字间的距离远一点,这又怎么做呢?

    下表为文本样式属性:

word-spacing文本顾名思义,这是设置文字间的聚类的
letter-spacing文本这是设置字符间的距离的
text-decoration文本我们把这个词翻译成中文就是 文本-装饰, 所以如果想给文本加下划线或删除线,就是通过这个属性来设置的
vertical-align文本顾名思义,垂直-布局,意味着它是设置文本在垂直方向上的布局的,比如middle,text-top,bottom,text-bottom等
text-align文本有垂直就有水平方向的,通过此属性设置文本在水平方向上的布局,比如left(左对齐,默认值),center(居中对齐),justify(两端对齐)
text-transform文本设置文本的大小写,比如uppercase(大写)、lowercase(小写)
text-indent文本定义文本的首行缩进
line-height文本设置文本行高,这个属性在应用元素的垂直居中上非常有效
text-shadow文本定义文本阴影或模糊效果,这个属性是在css2中引入的,CSS3对该属性做了修改,增加了不透明度样式
text-overflow文本定义省略文本的处理方式
direction文本设置文本的流入方向,比如rtl(从右到左流入),inherit(通过继承获得)
word-wrap文本定义当文本超过指定容器的宽度时是否换行显示

3.上面这些目前都是设置文字或文本的布局以及显示方式等,但是现在如果想让字体显示成彩色的,那又如何做呢?

    下面是CSS3中对文字颜色的处理增强:

color颜色设置文字显示的颜色(这个是css1中就已经有了)
HSL颜色表示方式HSL是色调(H),饱和度(S),亮度(L),通过这3个颜色通道的变化以及它们间叠加来表示各种各样的颜色
HSLA颜色表示方式HSLA是在HSL基础上加了透明度处理
RGBA颜色表示方式RGBA是在RGB基础上增加了透明度处理
opacity颜色定义颜色的不透明度

通过上面的内容,我们已经对文本样式属性有一些基本了解了,现在正式进行今天的燃烧字体实例分解步骤之旅。

燃烧字体,主要是运用到了CSS样式中的text-shadow阴影效果来实现。

text-shadow属性,在CSS2中引入进来的,CSS3又重新定义了它,增加了模糊半径,这就给我们实现火焰效果提供了方便。

text-shadow语法如下:

text-shadow<x轴方向上的偏移量> <y轴方向上的偏移量> <模糊半径(可以省略)> <阴影颜色(可以省略)>;

通过它的语法,我们知道,如果我们不需要模糊效果和颜色,则可以写成 text-shadow:1px 1px; 这句话就是说,阴影是沿着x,y轴正方向偏移1像素的距离。

这里我要声明一下,颜色值的位置不一定放在后面,也可以放在前面,但是 偏移量和模糊半径的顺序不能改变。

好了,开始我们的代码之旅吧,先创建html页面,代码如下所示:

<!DOCTYPE html>

<html>

<head>

<meta charset=”utf-8″>

<link  rel=”stylesheet” href=”styles.css”>

<title>阴影效果</title>

</head>

<body>

<div class=”container”>

   <a href="http://www.itdriver.cn">实战互联网</a>

</div>

</body>

</html>

接着,我们在外部样式文件中,设置如下的样式代码(在样式中我已经将每一行意思加了注释):

body{/*将背景设置成黑色,便于查看火焰效果*/

background-color:black;

}

 

.container{

font-family:serif,sans-serif,cursive; /*设置字体类型*/

height:400px;/*设置height与line-height,是文字在container中垂直方向上居中显示*/

line-height:400px;

font-size:80px; /*设置字体大小*/

font-weight:bold; /*将字体加粗显示*/

color:black; /*设置文本颜色为黑色,营造黑夜效果*/

text-align:center; /*设置文本在水平方向上居中显示*/

text-shadow:0 0 4px white, 

0 -5px 6px #FFE500,

2px -10px 6px #FFCC00,

-2px -15px 11px #FFCC00,

2px -25px 18px #FF8000;

}

运行一下代码,燃烧着的文本效果就出来了。



利用text-shadow,我们也可以实现 文字凸出的效果或发光字体效果等等,大家可以开动脑经,试试看吧。

关于字体效果各种属性,我会在以后章节的实例里再给大家做更详细讲解。

欢迎大家加入互联网技术交流群:62329335 

个人申明:所分享博文,绝对原创,并力争每一个知识点都通过实战演示来进行验证。


本文出自 “陌上花会开” 博客,请务必保留此出处http://itdriver.blog.51cto.com/9109476/1535765

CSS3新增属性text-shadow详解及燃烧的字体实战开发,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。