第七十八节,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/#index。最需要注意的只有IE10才支持,IE9不支持的;3.目前的浏览器不需要给这个属性加上任何前缀,具体查询前缀版本可以访问刚才提供的地址。
正值阴影
p{ width: 400px; height: 300px; border: 2px solid silver; background-color: silver; text-shadow: 1px 1px 1px red; } <p>这是一段文本</p>
负值阴影
p{ width: 400px; height: 300px; border: 2px solid silver; background-color: silver; text-shadow: -1px -1px 1px red; } <p>这是一段文本</p>
多重阴影叠加
p{ width: 400px; height: 300px; border: 2px solid silver; background-color: silver; 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); } <p>这是一段文本</p>
二.文本裁剪
text-overflow文本裁剪是否加上省略号
CSS3提供了text-overflow属性来控制文本的溢出部分,它的作用是对溢出的部分裁剪掉,然后判定是否添加省略号。首先我们先看下样式表的属性,如下:
属性值 说明
clip 默认值,裁剪文本时不添加“...”省略号
ellipsis 裁剪文本时添加“...”省略号
注意:首先要将文本white-space: nowrap;强制不换行,然后将文本overflow: hidden;溢出处理后,在写text-overflow属性才有用
p{ width: 200px; height: 100px; border: 2px solid silver; background-color: silver; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } <p>是一部由北青传媒股份有限公司、北京电视台、大前门北京文化艺术有限公司联合出品的励志电视剧,由刘家成执导,朱亚文、是一部由北青传媒股份有限公司、北京电视台、大前门北京文化艺术有限公司联合出品的励志电视剧,由刘家成执导,朱亚文、</p>
对于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主流版本中,引擎已经靠拢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>是一部由北青传媒股份有限公司</p>
修改描边的颜色和厚度
p{ font-size: 50px; -webkit-text-stroke:1px red; -webkit-text-stroke-color:orange; -webkit-text-stroke-width: 2px; } <p>是一部由北青传媒股份有限公司</p>
四.文本填充
text-fill-color文本颜色填充
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; } <p>是一部由北青传媒股份有限公司</p>
和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; } <p>是一部由北青传媒股份</p>