目录
CSS文本属性复习
首页 web前端 html教程 CSS3新增文本属性详述_html/css_WEB-ITnose

CSS3新增文本属性详述_html/css_WEB-ITnose

Jun 24, 2016 am 11:26 AM

CSS文本属性复习

1、white-space:对象内空格的处理方式
2、direction:文本流的方向
3、unicode-bidi:用于同一个页面里存在从不同方向读进的文本显示。与direction属性一起使用

1.white-space:对象内空格的处理方式
nowrap 控制文本不换行
pre 空白会被浏览器保留
normal 默认状态
pre-line 合并空白 保留换行符
pre-wrap 保留空白 正常换行
nowrap经常配合text-overflow一起使用,使得超出部分显示为省略号,主要overflow一定要设置为hidden,如下:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{ width: 200px;font-size: 20px; white-space: nowrap;text-overflow: ellipsis;overflow: hidden; } </style></head><body>   <p title="被包围在pre元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体">       被包围在pre元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体</p></body></html>
登录后复制

效果如下图所示:

还可以在样式中增加p:hover{normal;}这样正常状态下超出部分显示省略号,而鼠标悬停在p之上时,显示完整内容。
再看下其它的几个属性:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{width: 400px;font-size: 18px; background: #CBFF8F;line-height: 36px;} .pre{white-space: pre;/*空白被浏览器保留*/} .pre-line{white-space: pre-line;/*合并空白,保留换行符*/} .pre-wrap{white-space: pre-wrap;/*保留空白,正常换行*/} </style></head><body>    <p class="pre">    在理解this绑定之前,    先要理解调用位置。        我们可以通过浏览器的调试工具来查看调用栈。        在第一行代码钱插入一条debugger;</p>    <p class="pre-line">    在理解this绑定之前,    先要理解调用位置。        我们可以通过浏览器的调试工具来查看调用栈。        在第一行代码钱插入一条debugger;</p>    <p class="pre-wrap">    在理解this绑定之前,    先要理解调用位置。        我们可以通过浏览器的调试工具来查看调用栈。        在第一行代码钱插入一条debugger;</p>    <p class="normal">    在理解this绑定之前,    先要理解调用位置。        我们可以通过浏览器的调试工具来查看调用栈。        在第一行代码钱插入一条debugger;</p></body></html>
登录后复制

效果图如下:

如果元素内容未超出范围,pre和pre-wrap的效果是一样的,只有超出范围时,才有区别,pre是不会自动换行的,而pre-wrap到元素边界处,自动换行。
2、direction:文本流的方向
ltr 文本从左向右
rtl 文本从右往左

<html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{background: #e3e3e3;padding: 5px; width: 200px;} .left{direction: ltr;} .right{direction: rtl;} </style></head><body>    <p class="left">文本流的方向</p>    <p class="right">文本流的方向</p>    <p>文本流的方向</p></body></html>  
登录后复制

效果:

3、unicode-bidi:用于同一个页面里存在从不同方向读进的文本显示。 与direction属性一起使用
bidi-override 严格按照 <’ direction ‘> 属性的值重排序。忽略隐式双向运算规则。
unicode-bidi默认的属性值为normal,此外,在CSS3中还增加了另外几个属性值: isolate 、 isolate-override 、plaintext
仅举例说明bidi-override:(unicode-bidi属性在项目中使用频率很低)

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{background: #e3e3e3;padding: 5px; width: 200px;} .left{direction: ltr;unicode-bidi: bidi-override;} .right{direction: rtl;unicode-bidi: bidi-override;} </style></head><body>    <p class="left">文本流的方向</p>    <p class="right">文本流的方向</p></body></html>
登录后复制

效果如下:

CSS3新增文本属性
1、color:rgba();
2、text-overflow:是否使用一个省略标记(…)标示对象内文本的溢出
3、text-align:文本的对齐方式
4、text-transform:文字的大小写
5、text-decoration:文本的装饰线,复合属性
6、text-shadow:文本阴影
7、text-fill-color:文字填充颜色
8、text-stroke:复合属性。设置文字的描边
9、tab-size:制表符的长度
10、word-wrap:当前行超过指定容器的边界时是否断开转行

1、rgba()
r red 红色 0-255
g green 绿色 0-255
b blue 蓝色 0-255
a alpha 透明 0-1
rgba比rgb增加了一个透明度,此前我们使用opacity设置透明度,但是使用opacity会使得文字也变得透明,而rgba则不会,如下:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> div{font-size: 24px; width: 200px; font-weight: 600; margin: 20px; height: 200px; line-height: 200px;text-align: center;float: left;} .div1{background:rgb(0,146,255); opacity: 0.5;} .div2{background: rgba(0,146,255,0.5);} .img{width:400px;height:300px; background: url(../images/photo2.jpg) center; border: 25px solid rgba(0,0,0,0.6);} </style></head><body>    <div class="div1">文本属性</div>    <div class="div2">文本属性</div>    <div class="img"></div></body></html>
登录后复制

效果:

2、text-overflow:是否使用一个省略标记(…)标示对象内文本的溢出
clip: 默认值 无省略号
ellipsis:当对象内文本溢出时显示省略标记(…)。
注意:该属性需配合over-flow:hidden属性(超出处理)还有white-space:nowrap(禁止换行)配合使用,否则无法看到效果
这部分在前面讲white-space时已有例子。
3、text-align:文本的对齐方式
css1
left:默认值 左对齐
right:右对齐
center:居中
justify: 内容两端对齐。
css3
start:开始边界对齐
end:结束边界对齐
(跟文本流方向有关,如果文本流的方向为自右向左,那么start就是右侧,end就是左侧)

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{width:200px;background: #27bde3;padding: 5px;} .left{text-align: left;} .right{text-align: right;} .center{text-align: center;} .justify{text-align: justify;} .start{text-align: start; direction: rtl;} .end{text-align: end;} </style></head><body>    <p class="left">文本的对齐方式</p>    <p class="right">文本的对齐方式</p>    <p class="center">文本的对齐方式</p>    <p class="justify">文本的对齐方式ssssssssssss</p>    <p class="start">文本的对齐方式</p>    <p class="end">文本的对齐方式</p></body></html>
登录后复制


4、text-transform:文字的大小写
css1
none: 默认值 无转换
capitalize: 将每个单词的第一个字母转换成大写
uppercase: 转换成大写
lowercase: 转换成小写
css3
full-width: 将左右字符设为全角形式。不支持
full-size-kana:将所有小假名字符转换为普通假名。不支持
例如:土耳其语。
这几个属性值都可以从描述中清晰的看出其用途,不做举例说明
5、text-decoration:文本的装饰线,复合属性
text-decoration-line :指定文本装饰的种类。相当于CSS1时的text-decoration属性
none:指定文字无装饰
underline: 指定文字的装饰是下划线
overline:指定文字的装饰是上划线
line-through: 指定文字的装饰是贯穿线
text-decoration-style :指定文本装饰的样式。
solid:实线
double:双线
dotted:点状线条
dashed:虚线
wavy:波浪线
text-decoration-color:指定文本装饰的颜色。
用法:text-decoration : #F00 double overline

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{font-size: 24px;} .under{text-decoration: #FA4C41 dotted underline;} .over{text-decoration: #0092ff solid overline;} .through{text-decoration: #FF0000 double line-through;} .dashed{text-decoration: #FF0000 dashed underline;} .wavy{text-decoration: #FF0000 wavy underline;} </style></head><body>    <p class="under">IE不支持这个属性</p>    <p class="over">IE不支持这个属性</p>    <p class="through">IE不支持这个属性</p>    <p class="dashed">IE不支持这个属性</p>    <p class="wavy">IE不支持这个属性</p></body></html>
登录后复制

6、text-shadow:文本阴影
取值:x y blur color,……
x 横向偏移
y 纵向偏移
blur 模糊距离(灰度)
color 阴影颜色

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{text-align:center;font:50px/50px "微软雅黑";/*字体:字体大小/行高*/} .p1{font-weight:600; text-shadow: 5px 4px 8px #766F5A;} .p2{color:#FFF;text-shadow:2px 3px 4px #000;/**/} .p3{color: #FFF; text-shadow: 0 0 20px #FF79C3, 0 0 30px #71FF5B,0 0 50px #FF0000,0 0 80px #FF0000;} </style></head><body>    <p class="p1">文本阴影</p>    <p class="p2">浮雕效果</p>    <p class="p3">光影效果</p></body></html>
登录后复制


7、text-fill-color:文字填充颜色
兼容性不好,目前仅谷歌支持。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{-webkit-text-fill-color:red;font-size:30px;font-weight: 600;} </style></head><body>    <p>文字填充颜色</p></body></html>
登录后复制


8、text-stroke:复合属性。设置文字的描边
text-stroke-width:文字的描边厚度
text-stroke-color:文字的描边颜色

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{font-size:100px;-webkit-text-fill-color: transparent; -webkit-text-stroke: 2px blue;} </style></head><body>    <p>描边属性</p></body></html>
登录后复制



9、tab-size:制表符的长度
默认值为8(一个tab键的空格字节长度),在pre标签之内才会有显示
10、word-wrap:当前行超过指定容器的边界时是否断开转行
normal: 默认值
允许内容顶开或溢出指定的容器边界。
break-word:
内容将在边界内换行。如果需要,单词内部允许断行。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title></title>    <style> p{width:200px;border:2px solid #FF0000;padding: 5px;} .p1{word-wrap: normal} .p2{word-wrap: break-word;} </style></head><body>    <p class="p1">Farawayfromme,awayfromharmaaa</p>    <p class="p2">Farawayfromme,awayfromharmaaa</p></body></html>
登录后复制

鉴于CSS3的兼容性问题,可以在caniuse网站进行查询,以明确其支持的浏览器版本。
http://caniuse.com/

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验? 公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验? Mar 04, 2025 pm 12:32 PM

公众号网页更新缓存,这玩意儿,说简单也简单,说复杂也够你喝一壶的。你辛辛苦苦更新了公众号文章,结果用户打开还是老版本,这滋味,谁受得了?这篇文章,咱就来扒一扒这背后的弯弯绕绕,以及如何优雅地解决这个问题。读完之后,你就能轻松应对各种缓存难题,让你的用户始终体验到最新鲜的内容。先说点基础的。网页缓存,说白了就是浏览器或者服务器为了提高访问速度,把一些静态资源(比如图片、CSS、JS)或者页面内容存储起来。下次访问时,直接从缓存里取,不用再重新下载,速度自然快。但这玩意儿,也是个双刃剑。新版本上线,

如何使用HTML5表单验证属性来验证用户输入? 如何使用HTML5表单验证属性来验证用户输入? Mar 17, 2025 pm 12:27 PM

本文讨论了使用HTML5表单验证属性,例如必需的,图案,最小,最大和长度限制,以直接在浏览器中验证用户输入。

HTML5中跨浏览器兼容性的最佳实践是什么? HTML5中跨浏览器兼容性的最佳实践是什么? Mar 17, 2025 pm 12:20 PM

文章讨论了确保HTML5跨浏览器兼容性的最佳实践,重点是特征检测,进行性增强和测试方法。

如何高效地在网页中为PNG图片添加描边效果? 如何高效地在网页中为PNG图片添加描边效果? Mar 04, 2025 pm 02:39 PM

本文展示了使用CSS为网页中添加有效的PNG边框。 它认为,与JavaScript或库相比,CSS提供了出色的性能,详细介绍了如何调整边界宽度,样式和颜色以获得微妙或突出的效果

&lt; datalist&gt;的目的是什么。 元素? &lt; datalist&gt;的目的是什么。 元素? Mar 21, 2025 pm 12:33 PM

本文讨论了html&lt; datalist&gt;元素,通过提供自动完整建议,改善用户体验并减少错误来增强表格。Character计数:159

&gt; gt;的目的是什么 元素? &gt; gt;的目的是什么 元素? Mar 21, 2025 pm 12:34 PM

本文讨论了HTML&lt; Progress&gt;元素,其目的,样式和与&lt; meter&gt;元素。主要重点是使用&lt; progress&gt;为了完成任务和LT;仪表&gt;对于stati

我如何使用html5&lt; time&gt; 元素以语义表示日期和时间? 我如何使用html5&lt; time&gt; 元素以语义表示日期和时间? Mar 12, 2025 pm 04:05 PM

本文解释了HTML5&lt; time&gt;语义日期/时间表示的元素。 它强调了DateTime属性对机器可读性(ISO 8601格式)的重要性,并在人类可读文本旁边,增强Accessibilit

&lt; meter&gt;的目的是什么。 元素? &lt; meter&gt;的目的是什么。 元素? Mar 21, 2025 pm 12:35 PM

本文讨论了HTML&lt; meter&gt;元素,用于在一个范围内显示标量或分数值及其在Web开发中的常见应用。它区分了&lt; meter&gt;从&lt; progress&gt;和前

See all articles