CSS3 对原来的 CSS2 版本中已定义的属性取值进行修补,增加了更多的属性值,来适应复杂环境中文本的呈现。

一、定义文本阴影

  可以给文字添加阴影效果了 Shadow 影子

  语法:

text-shadow:水平位置 垂直位置 模糊距离 阴影颜色 | none;
    • none:表示默认值,没有阴影;
    • 水平位置:表示对象的阴影水平偏移值,可为负值
    • 垂直位置:表示对象的阴影垂直偏移值,可为负值
    • 模糊距离:设置对象的阴影模糊值,不允许负值
    • 阴影颜色:设置阴影的颜色

    

  扩展:可以给 text-shadow 设置多个值,表示多阴影的文字,可以做很多的特效。

  Demo:凹凸文字的特效

  样式:

 div {
color: #ccc;
font: 700 80px "微软雅黑";
}
div:first-child {
/* text-shadow: 水平位置 垂直位置 模糊距离 阴影颜色; */
text-shadow: 1px 1px 1px #000, -1px -1px 1px #fff;
}
div:last-child {
/* text-shadow: 水平位置 垂直位置 模糊距离 阴影颜色; */
text-shadow: -1px -1px 1px #000, 1px 1px 1px #fff;
}

  结构:

 <div>我是凸起的文字</div>
<div>我是凹下的文字</div>

二、文本换行

  CSS3 中定义了几个关于换行的属性:

  1、line-break

      该属性专门负责控制日文换行

  2、word-wrap

     该属性可以控制换行。

    语法格式:

word-wrap: break-word;

    取值 break-word 时,将强制换行,中文文本没有任何问题,英文语句也没问题。但是对于长串的英文不起作用。该取值控制是否断词,而不是断字符

  3、word-break

        该属性主要针对亚洲语言和非亚洲语言进行控制换行。

    语法格式:

word-break: normal | break-all | keep-all;
    •   normal: 使用浏览器默认的换行规则。
    • break-all: 允许在单词内换行。(允许在任意字内断开)
    • keep-all: 只能在半角空格或连字符处换行。(主要处理英文单词)

  4、white-space

    white-space设置或检索对象内文本显示方式。通常我们使用于强制一行显示内容或格式化文本作用。

    语法格式:

white-space: normal | nowrap | break-word;
    •   normal:默认处理方式,表示控制连续文本换行;
    • nowrap :  强制在同一行内显示所有文本,直到文本结束或者遭遇br标签对象才换行,可以处理中文。
    • break-word:表示内容将在边界内换行。

三、定义溢出文本

  设置或检索是否使用一个省略标记(...)标示对象内文本的溢出。

  语法格式:

text-overflow : clip | ellipsis | ellipsis-word;
    • 该属性的初始值为无,适用于块级元素或行内元素。
    • clip:表示不显示省略标记(...),而是简单的裁切;
    • ellipsis:表示当对象内文本移除时显示省略标记(...),省略标记插入的位置是最后一个字符;
    • ellipsis:表示当对象文本移除时显示省略标记(...),省略标记插入的位置是最后一个词(word).

    Tips:注意一定要首先强制一行内显示(white-space:nowrap)和溢出内容为隐藏(overflow:hidden),只有这两个搭配使用才能实现溢出文本显示省略号的效果。

  扩展知识:

    1、webkit的css扩展方法实现多行文本

      webkit 规定了自己的一些属性,可以做出多行文本溢出显示省略号效果。

display: -webkit-box;                 //将对象作为弹性的伸缩盒子显示
-webkit-box-orient: vertical; //设置伸缩盒子对象内的子对象的排列方式
-webkit-line-clamp: 2; //用该属性来限定块元素内文本显示的行数
overflow: hidden; // 超出内容隐藏
text-overflow:ellipsis; //使用省略号告诉用户有内容为显示

      使用以上的代码即可实现多行文本溢出显示省略号。

    2、通用的多行文本显示省略号

      在通用的浏览器中显示省略号,可以通过自己手动添加伪元素的方式来实现。

     .container {                      // container 为放文字的容器
height: 30px;
line-height: 2em;
overflow: hidden;
border: 1px solid red;
position: relative;
}
.container::after {
content: "..."; // 通过伪元素,手动添加省略号
position: absolute; // 通过定位来实现
right:;
bottom:;
padding: 0 6px;
background-color: #fff;
}

四、添加动态内容

  content 属性属于内容生成和替换模块,该属性能够为指定元素添加内容(这部分功能替代了原需 JavaScript 的任务)。

  该属性能够满足样式设计中临时添加非结构性的样式服务标签,或者添加补充说明性内容等等。

  语法格式:

content: normal | string | attr() | uri() | counter() | none;
    •   normal:默认值,适用于所有可用元素;
    • String:插入文本内容;
    • attr():插入元素的属性值;
    • uri():插入一个外部资源,如图像,音频或浏览器支持的其他任何资源;
    • counter():计数器,用于插入排序标识;
    • none:无任何内容。

五、恢复默认样式

  initial 该属性值可以直接取消对某个元素的样式指定。

  Demo:

p#text2 { color:initial;}

     initial 属性值的作用是让各种属性使用默认值。

  Tips:注意权重问题。

六、自定义字体类型

  CSS3 允许用户自定义字体类型,通过 @font-face 能够加载服务器的字体文件,让客户端浏览器显示客户端没有安装的字体。

  语法格式:

@font-face:{<font-description>}

    @font-face 规则的选择符的固定的,用来引用服务器端的字体文件。

  <font-description> 是一个属性名值时,格式类似如下样式:

descriptor:value;
descriptor:value;
descriptor:value;
descriptor:value;
{...}
descriptor:value;

  属性及其取值说明如下:

    • font-family:设置文本的字体名称;
    • font-style:设置文本样式;
    • font-variant:设置文本是否大小写;
    • font-weight:设置文本的粗细;
    • font-stretch:设置文本是否横向的拉伸变形;
    • font-size:设置文本字体大小;
    • src:设置自定义字体的相对路径或者绝对路径。

  具体的应用请参考这篇文章:字体图标的使用

CSS3 新增文本样式的更多相关文章

  1. CSS3新增文本属性实现图片点击切换效果

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. css3新增文本属性

    css3新增属性 边框属性 背景属性 文本属性 颜色属性 文本属性 属性 说明 text-shadow 为文字添加阴影 box-shadow 在元素的框架上添加阴影效果 text-overflow 确 ...

  3. CSS3新增UI样式

    圆角,border-radius: 1-4个数字/1-4个数字,前面是水平,后面是垂直,不给“/”表示水平和垂直一样,举例如下: <head> <meta http-equiv=&q ...

  4. CSS3 新增的文本属性

    一.CSS1&2中的文本属性(W3C标准) text-indent CSS1 检索或设置对象中的文本的缩进 letter-spacing CSS1 检索或设置对象中的文字之间的间隔 word- ...

  5. css3新增边框、阴影、边框、背景、文本、字体

    css3和css有什么区别?简单来讲css3是css(层叠样式表)技术的升级版本,css3新特征有很多,例如圆角效果.图形化边界.块阴影与文字阴影.使用RGBA实现透明效果.渐变效果.使用@Font- ...

  6. 认识CSS3新增选择器和样式

    前端之HTML5,CSS3(二) CSS3新增选择器和样式 CSS3新增选择器 结构伪类选择器 :first-child:选取父元素中的第一个子元素的指定选择器 :last-child:选取父元素中的 ...

  7. 前端开发CSS3——文本样式和盒子及样式

    博主废话少说,直接介绍css常用的属性和属性值:属性和值只需过一遍,页面的结构还是需要布局,布局的只是后期会更新的. 提供一些图标的网站:font-awesome:     http://fontaw ...

  8. CSS系列:CSS3新增选择器

    1. CSS1定义的选择器 选择器 类型 说明 E 类型选择器 选择指定类型的元素 E#id ID选择器 选择匹配E的元素,且匹配元素的id为“id”,E选择符可以省略. E.class 类选择器 选 ...

  9. CSS3新增的选择器和属性

    <!doctype html>无标题文档 一.新增的选择器 CSS3新增的属性选择器 {除ie6外的大部分浏览器支持) 序号 选择器 含义 实例 1 E[att^="val&qu ...

随机推荐

  1. Kubernetes部署Spring Boot应用

    SpringBoot项目 新建springboot项目 @RestController public class HelloWorldController { @RequestMapping(&quo ...

  2. 每天一道Rust-LeetCode(2019-06-01)

    每天一道Rust-LeetCode(2019-06-01) 坚持每天一道题,刷题学习Rust. 题目描述 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的, ...

  3. 【java异常】【redis】ERR Client sent AUTH, but no password is set

    项目中使用jedis或redisson连接redis时,如果redis没有密码,但在配置文件中写为 spring: redis: database: 0 host: 127.0.0.1 passwor ...

  4. 踩iviewui中Tabs 标签页数据绑定坑

    今天小颖要实现点击Tabs 标签页中每个标签,并动态获取当前点击的标签值. 一句话说不清楚,那就看动态图吧 小颖一开始看官网写的代码是: <template> <Tabs :valu ...

  5. 请简述get请求和post请求的区别

    ①get比post快 ②get体积小,post可以无限大 ③get在浏览器退回时无害,post会再次请求 ④get的url参数可见,post不可见 ⑤get请求数据放在url,post数据放在http ...

  6. Linux/Unix 多线程通信

    线程间无需特别的手段进行通信,因为线程间可以共享数据结构,也就是一个全局变量可以被两个线程同时使用. 不过要注意的是线程间需要做好同步,一般用 mutex. 可以参考一些比较新的 UNIX/Linux ...

  7. 洛谷 P1801 黑匣子_NOI导刊2010提高(06) 题解

    昨晚恶补了一下二叉堆的内容 然后就找了几个二叉堆的题来做awa 然后发现用二叉堆做这题复杂度是O(nlogn) 但是有O(n)的解法 (某大佬这么说) 思路大概就是: 利用一个大根堆一个小根堆来维护第 ...

  8. wkhtmltopdf cpdf HTML转pdf 及pdf合并

    将 html 转为 pdf :wkhtmltopdf wkhtmltopdf 是一个使用 webkit 网页渲染引擎开发的用来将 html 转成 pdf 的工具,可以跟多种脚本语言进行集成来转换文档. ...

  9. TCGA简易下载工具 SangerBox

    下载地址:http://sangerbox.com/ https://shengxin.ren/article/208 Understanding TCGA mRNA Level3 analysis ...

  10. python jenkins api

    #!/usr/bin/pythonimport sys, timeimport shutil, commands#coding=utf-8 import sysreload(sys)sys.setde ...