CSS 文字效果
本节关注的文字效果主要包括:文本溢出、自动换行、换行规则和书写模式
本节关注的文字效果主要包括:文本溢出、自动换行、换行规则和书写模式。
在本章中,您将了解以下属性:
text-overflow
word-wrap
word-break
writing-mode
CSS 文本溢出
CSS text-overflow
属性指定如何处理超出元素尺寸范围的文本。
text-overflow
属性可选值:
clip
:截断超出的内容,不显示ellipsis
:使用省略号表示超出的内容
CSS 代码如下:
p.test1 {
white-space: nowrap;
width: 200px;
border: 1px solid #000000;
overflow: hidden;
text-overflow: clip;
}
p.test2 {
white-space: nowrap;
width: 200px;
border: 1px solid #000000;
overflow: hidden;
text-overflow: ellipsis;
}
鼠标悬停在元素上时显示溢出的内容:
div.test:hover {
overflow: visible;
}
CSS 自动换行
默认情况下,长单词不会被断开,如果长度超过了容器的宽度,就会显示再边框外边。CSS word-wrap
属性允许长单词能够被断开并换行到下一行。
word-wrap
属性可选值:
normal
:默认值。行只能在正常的单词断点处中断。(例如两个单词之间的空格)。break-word
:表示如果行内没有多余的地方容纳该单词到结尾,则那些正常的不能被分割的单词会被强制分割换行。
允许长单词能够被断开并换行到下一行:
p {
word-wrap: break-word;
}
CSS 分词
CSS word-break
属性指定了怎样在单词内断行。 word-break
属性的可选值:
normal
: 使用默认的断行规则。break-all
: 对于 Non-CJK (CJK 指中文/日文/韩文) 文本,可在任意字符间断行。keep-all
: CJK 文本不断行。 Non-CJK 文本表现同 normal。
p.test1 {
word-break: keep-all;
}
p.test2 {
word-break: break-all;
}
CSS 书写模式
CSS writing-mode
属性指定文本行是水平布局还是垂直布局。
writing-mode
属性的可选值:
-
horizontal-tb
对于左对齐(ltr)文本,内容从左到右水平流动。对于右对齐(rtr)文本,内容从右到左水平流动。下一水平行位于上一行下方。
-
vertical-rl
对于左对齐(ltr)文本,内容从上到下垂直流动,下一垂直行位于上一行左侧。对于右对齐(rtr)文本,内容从下到上垂直流动,下一垂直行位于上一行右侧。
-
vertical-lr
对于左对齐(ltr)文本,内容从上到下垂直流动,下一垂直行位于上一行右侧。对于右对齐(rtr)文本,内容从下到上垂直流动,下一垂直行位于上一行左侧。
一些带有 span 元素的文本 垂直-rl 写作模式
p.test1 {
writing-mode: horizontal-tb;
}
span.test2 {
writing-mode: vertical-rl;
}
p.test2 {
writing-mode: vertical-rl;
}
CSS 文本效果属性
下表列出了 CSS 文本效果属性:
属性 | 说明 |
---|---|
text-align-last |
定义最后一行的对齐方式 |
text-justify |
定义的是当文本的 text-align 属性被设置为 justify 时的齐行方法 |
text-overflow |
定义如何处理超出元素尺寸范围的文本。 |
word-break |
定义怎样在单词内断行 |
word-wrap |
定义是否允许长单词被断开 |
writing-mode |
定义书写模式是水平还是垂直 |