热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CSS3实践之路(四):文本特效

.tshadow{text-shadow:5px5px5px#0066ff;color:#660066;}.txtjust{width:70px;text-align:justify;t

之前工作忙,这篇博文来的有点晚,向大家说声抱歉!

1 文本特效

CSS3给文字加了很多特效,http://www.w3schools.com/css3/css3_text_effects.asp

在这里我将介绍:text-shadow、word-wrap、word-break和text-overflow。

1.1 text-shadow

文字阴影目前IE还不支持,而其它浏览器都已经支持了。

语法:text-shadow: h-shadow v-shadow blur color;

这和box-shadow 有点类似。

说明:

Value

Description

h-shadow

必需的,指定水平方向上阴影的位置,可为正负值.

v-shadow

必需的,指定垂直方向上阴影的位置,可为正负值.

blur

可选的.模糊距离

color

可选的.阴影的颜色Look at CSS Color Values for a complete list of possible color values

实例:
text-shadow:5px 5px 5px #0066FF;
color:#660066;

有文字阴影

1.2 word-wrap

使英文长单词可以截断,分两行显示。所有浏览器都已经支持,在中文的不存在这样的问题,因为每个汉字就当作一个单词。

语法:word-wrap: normal|break-word;

Value

Description

normal

正常显示单词(长的英文单词是不可以截断的),默认值

break-word

把长单词强制截断(也说强制换行)

实例:


The word-wrap propertyallowslong words to be able to be broken and wrap onto the next line


The word-wrap propertyallowslong words to be able to be broken and wrap onto the next line

div.wrap1{	width:100px;word-wrap:normal; border:1px gray solid; float:left;margin-right:80px;}div.wrap2{	width:100px;word-wrap:break-word; border:1px maroon solid; float:left; }

image

1.3 word-break

专门用于non-CJK(CJK:中日韩 文字)换行规则,Firefox 和Opera不支持它.

语法:word-break: normal|break-all|hyphenate;

说明:

Value

Description

normal

按正常的规则来换行

break-all

不管什么字符都会强制换行(在非中日韩 文字中)

hyphenate

单词会在一个合适的时候换行

实例:

p.test1
{
width:11em;
border:1px solid #000000;
word-break:hyphenate;
}

p.test2
{
width:11em;
border:1px solid #000000;
word-break:break-all;
}

This paragraph contains some text. This line will-break-at-hyphenates.

This paragraph contains some text: The lines will break at any character.

This paragraph contains some text. This line will-break-at-hyphenates.

This paragraph contains some text: The lines will break at any character.

1.4 text-overflow

当容器内的文本长度超过容器的宽度时,指定文本显示方式(切断、…和显示字符)。相信在显示新闻列表中常用到

语法:text-overflow: clip|ellipsis|string;

Value

Description

clip

切断文本

ellipsis

以省略号 ("...") 来代替将要切断的文本,在Firefox还不支持。

string

以某个字符串来代替将要切断的文本.目前浏览器还不支持。

实例:
>
The text-overflow property specifies what should happen when text overflows the containing element

>
The text-overflow property specifies what should happen when text overflows the containing element

The text-overflow property specifies what should happen when text overflows the containing element
The text-overflow property specifies what should happen when text overflows the containing element

1.5 text-justify

这是IE的特有文字效果,用于在对象中使文本对齐的对齐类型。

参考网址:http://msdn.microsoft.com/en-us/library/ms531172(v=vs.85).aspx

语法:text-justify: auto|inter-word|inter-ideograph|inter-cluster|distribute|kashida|newspaper;

注意:使用此CSS的前提是text-align:justify;
说明:

auto

默认值。允许浏览器确定要应用的对齐算法。

distribute

处理间距,与处理 newspaper值非常相像。这种形式的对齐针对亚洲语言(如泰语)的文档进行了优化。

inter-cluster

将不包含字间距的文本行对齐。这种形式的对齐针对亚洲语言的文档进行了优化。

inter-ideograph

将象形文本行对齐,增加或减小交互象形文字间距和字间距。

inter-word

通过增加字之间的空格来对齐文本。此值的间隔调整行为是使所有文本行长度相等的最快方式。其对齐行为不影响段落的最后一行。

kashida

通过在所选点拉长字符来对齐文本行。这种形式的对齐适用于阿拉伯语脚本语言。

newspaper

增加或减小字母间距和字间距。它是适用于拉丁文字母的最复杂的对齐方式。

实例:大家可以参考下面这个页面http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/text-justify.htm,个人觉得此CSS对英文字母能起到比较明显的效果,对汉字基本上没什么效果了(因为一个汉字就相当于一个英文单词)。

至此,CSS3中新加的Text属性已经讲完,加上CSS之前的版本,可以运用的文本CSS已经很多了。

imageimageimage

2. Content

content其实是CSS2中的内容,个人觉得是个不错的样式,它用来对使用CSS伪选择器(:before and :after )的对象插入指定的文本。

语法:content: “”

说明:

Value

Description

Example

none

不指定content

Try it »

normal

使用对象中的文本正常,也就是不加文本

Try it »

counter

Sets the content as a counter

Try it »

attr(attribute)

Sets the content as one of the selector's attribute

Try it »

string

以字符串的形式设定附加的本内容

Try it »

open-quote

设定内容为开引号

Try it »

close-quote

设定内容为闭引号

Try it »

no-open-quote

移动之前指定的开引号,如果它存在

Try it »

no-close-quote

移动之前指定的闭号,如果它存在

Try it »

url(url)

使用某个文件来设定其内容

Try it »

inherit

继承父元素的content属性

 

实例:大家可以点击“Try it”,来看看W3school中实例。

3. font-face

@font-face 可以使网页设计都不用担心客户端字体库中没有相应字休,可以指定相应字体的路径供浏览器使用,大多数浏览器都支持@font-face 规则,但IE仅支持.eot 类型的字体,其它浏览器支持.ttf 和.otf 类型的字体.

例如:

@font-face
{
font-family: myFirstFont;
src: url('Sansation_Light.ttf'),
url('Sansation_Light.eot'); /* IE */
}

语法说明:

 

Font descriptor

Values

Description

font-family

name

必需的.给引用的字体命名

src

URL

必需的.定义字体的路径

font-stretch

normal
condensed
ultra-condensed
extra-condensed
semi-condensed
expanded
semi-expanded
extra-expanded
ultra-expanded

可选的.

font-style

normal
italic
oblique

可选的.

font-weight

normal
bold
100
200
300
400
500
600
700
800
900

可选的.

unicode-range

unicode-range

可选的.定义字体支持的编码范围, 默认是"U+0-10FFFF"


推荐阅读
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • javascript分页类支持页码格式
    前端时间因为项目需要,要对一个产品下所有的附属图片进行分页显示,没考虑ajax一张张请求,所以干脆一次性全部把图片out,然 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • com.sun.javadoc.PackageDoc.exceptions()方法的使用及代码示例 ... [详细]
  • Ihavetwomethodsofgeneratingmdistinctrandomnumbersintherange[0..n-1]我有两种方法在范围[0.n-1]中生 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • 浅析python实现布隆过滤器及Redis中的缓存穿透原理_python
    本文带你了解了位图的实现,布隆过滤器的原理及Python中的使用,以及布隆过滤器如何应对Redis中的缓存穿透,相信你对布隆过滤 ... [详细]
  • ECharts 官方提供了丰富的图表示例,但实际项目中往往需要从后端动态获取数据。本文将详细介绍如何从后端获取数据并将其转换为 ECharts 所需的 JSON 格式,以实现动态饼图的展示。 ... [详细]
  • oracle c3p0 dword 60,web_day10 dbcp c3p0 dbutils
    createdatabasemydbcharactersetutf8;alertdatabasemydbcharactersetutf8;1.自定义连接池为了不去经常创建连接和释放 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • JComponentJLabel的setBorder前言用例2205262241前言setBorder(Border边框)实现自JComponentjava.awt.Insets ... [详细]
  • 通过使用Sqoop导入工具,可以精确控制并高效地将表数据的特定子集导入到HDFS中。具体而言,可以通过在导入命令中添加WHERE子句来指定所需的数据范围,从而在数据库服务器上执行相应的SQL查询,并将查询结果高效地存储到HDFS中。这种方法不仅提高了数据导入的灵活性,还确保了数据的准确性和完整性。 ... [详细]
  • 在处理数据库中所有用户表的彻底清除时,目前尚未发现单一命令能够实现这一目标。因此,需要采用一种较为繁琐的方法来逐个删除相关表及其结构。具体操作可以通过编写PL/SQL脚本来实现,该脚本将动态生成并执行删除表的SQL语句。尽管这种方法相对复杂,但在缺乏更简便手段的情况下,仍是一种有效的解决方案。未来或许可以通过数据库管理工具或更高版本的数据库系统提供更简洁的处理方式。 ... [详细]
author-avatar
白白加黑黑99_889
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有