第21章 CSS3文本效果

2017年9月14日07:00:26 发表评论

本章主要探讨 HTML5 中 CSS3 中文本效果, 其中也包含一些之前讲过的 CSS3 文本属性。

一.文本阴影

CSS3 提供了 text-shadow 文本阴影效果, 这个属性在之前讲过,只是没有涉及浏览器支持情况。

text-shadow Opera Firefox Chrome IE Safari
9.5+ 3.5+ 4+ 10+ 3.1+

这里有几个注意点:1.text-shadow 在 CSS2 的时候出现过,但各大浏览器碍于消耗大量的资源,迟迟未支持,然后在 CSS2.1 中剔除了。现在,CSS3 已经全面支持了;2.最低支持版本上,不同手册和教材上都不太同,但版本年代久远,无伤大雅。最准确的可以查询这个网站:http://caniuse.com。最需要注意的只有 IE10 才支持,IE9 不支持的;3.目前的浏览器不需要给这个属性加上任何前缀,具体查询前缀版本可以访问刚才提供的地址。

//正值阴影

text-shadow: 1px 1px 1px red;

//负值阴影

text-shadow: -1px -1px 1px red;

//多重阴影叠加

text-shadow:0px 0px 0 rgb(188,178,188),
            1px 0px 0 rgb(173,163,173),
            2px 0px 0 rgb(157,147,157),
            3px 0px 0 rgb(142,132,142),
            4px 0px 0 rgb(126,116,126),
            5px 0px 0 rgb(111,101,111),
            6px 0px 0 rgb(95,85,95),
            7px 0px 0 rgb(79,69,79),
            8px 0px 7px rgba(0,0,0,0.35),
            8px 0px 1px rgba(0,0,0,0.5),
            0px 0px 7px rgba(0,0,0,0.2);

二.文本裁剪

CSS3 提供了 text-overflow 属性来控制文本的溢出部分,它的作用是对溢出的部分裁剪掉,然后判定是否添加省略号。首先我们先看下样式表的属性,如下:

属性值 说明
clip 默认值,裁剪文本时不添加“...”省略号
ellipsis 裁剪文本时添加“...”省略号

//必须不换号和使用 overflow 控制溢出

p {
    width: 160px;
    white-space: nowrap;
    background: silver;
    /*text-overflow: clip;*/
    text-overflow: ellipsis;
    overflow: hidden;
}

对于 text-overflow 的支持度,是根据它的属性值来判定的,不同的属性值浏览器支持度不同。

属性值 Opera Firefox Chrome IE Safari
clip 9.63+ 2.0+ 1.0+ 6.0+ 3.1+
ellipsis 10.5+ 6.0+ 1.0+ 6.0+ 3.1+

//在 Opera 早期版本 10.0 ~ 10.1 中,需要使用带前缀的-o-。

p {
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

而在 Opera 主流版本中,引擎已经靠拢 webkit,则不需要-o-了。目前来说,也不需要兼容-o-了。

三.文本描边

CSS3 提供了描边属性, 即 text-stroke、 text-stroke-width、 text-stroke-color。目前只有 webkit 引擎的浏览器支持,并且必须加上-webkit-前缀才能有效。

属性值 Opera Firefox Chrome IE Safari
text-stroke 系列 15.0+ 不支持 4.0+ 不支持 3.1+

//实验阶段的产物,了解即可

p {
    font-size: 50px;
    -webkit-text-stroke:1px red;
}

//修改描边的颜色和厚度

p {
    font-size: 50px;
    -webkit-text-stroke:1px red;
    -webkit-text-stroke-color: orange;
    -webkit-text-stroke-width: 2px;
}

四.文本填充

CSS3 提供了一个文本颜色填充功能:text-fill-color,感觉和 color 属性很像。其实在配合其他属性才能达到不一样的效果。

属性值 Opera Firefox Chrome IE Safari
text-fill-color 15.0+ 不支持 4.0+ 不支持 3.1+

//不配合背景样式时,和 color 属性没区别

p {
    font-size: 150px;
    -webkit-text-fill-color: red;
}

//和 CSS3 背景的新特性搭配产生渐变文字

p {
    font-size: 150px;
    font-family: 黑体;
    background:
        -webkit-linear-gradient(top,#eee,#aaa 50%,#333 51%,#000);
    -webkit-background-clip:text;
    -webkit-text-fill-color: transparent;
}

注:本次教程共63节课(由大庆seo工程师整理发布),循序渐进地教您响应式网站的制作。1-13课时为html5内容,14-40课时为css3内容,41-51课时为pc端固定布局网站制作实例,52-57课时为移动端流体布局网站制作实例,58-63课时为响应式网站制作实例。最贴心的是每节课示例代码提供免费下载。小白从第一节课开始学起,将走向前端开发,特别是目前最为流行的响应式网站高手之路......

 

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: