`

CSS基础-CSS文本

    博客分类:
  • css
阅读更多
CSS 文本属性可定义文本的外观。

通过文本属性,您可以改变文本的颜色、字符间距,对齐文本,装饰文本,对文本进行缩进,等等。

缩进文本
把 Web 页面上的段落的第一行缩进,这是一种最常用的文本格式化效果。

CSS 提供了 text-indent 属性,该属性可以方便地实现文本缩进。

通过使用 text-indent 属性,所有元素的第一行都可以缩进一个给定的长度,甚至该长度可以是负值。

这个属性最常见的用途是将段落的首行缩进,下面的规则会使所有段落的首行缩进 5 em:

p {text-indent: 5em;}

使用负值
text-indent 还可以设置为负值。利用这种技术,可以实现很多有趣的效果,比如“悬挂缩进”,即第一行悬挂在元素中余下部分的左边:

p {text-indent: -5em;}不过在为 text-indent 设置负值时要当心,如果对一个段落设置了负值,那么首行的某些文本可能会超出浏览器窗口的左边界。为了避免出现这种显示问题,建议针对负缩进再设置一个外边距或一些内边距:

p {text-indent: -5em; padding-left: 5em;}使用百分比值
text-indent 可以使用所有长度单位,包括百分比值。

百分数要相对于缩进元素父元素的宽度。换句话说,如果将缩进值设置为 20%,所影响元素的第一行会缩进其父元素宽度的 10%。

在下例中,缩进值是父元素的 20%,即 100 个像素:

div {width: 500px;}
p {text-indent: 20%;}

<div>
<p>this is a paragragh</p>
</div>
继承
text-indent 属性可以继承,请考虑如下标记:

div#outer {width: 500px;}
div#inner {text-indent: 10%;}
p {text-indent: 300px;}

<div id="outer">
<div id="inner">some text. some text. some text.
<p>this is a paragragh.</p>
</div>
</div>
以上标记中的段落也会缩进 50 像素,这是因为这个段落继承了 id 为 inner 的 div 元素的缩进值。

水平对齐
text-align 是一个基本的属性,它会影响一个元素中的文本行互相之间的对齐方式。它的前 3 个值相当直接,不过第 4 个和第 5 个则略有些复杂。

值 left、right 和 center 会导致元素中的文本分别左对齐、右对齐和居中。

西方语言都是从左向右读,所有 text-align 的默认值是 left。文本在左边界对齐,右边界呈锯齿状(称为“从左到右”文本)。对于希伯来语和阿拉伯语之类的的语言,text-align 则默认为 right,因为这些语言从右向左读。不出所料,center 会使每个文本行在元素中居中。


text-align:center 与 <CENTER>
您可能会认为 text-align:center 与 <CENTER> 元素的作用一样,但实际上二者大不相同。

<CENTER> 不仅影响文本,还会把整个元素居中。text-align 不会控制元素的对齐,而只影响内部内容。元素本身不会从一段移到另一端,只是其中的文本受影响。

justify
最后一个水平对齐属性是 justify。

在两端对齐文本中,文本行的左右两端都放在父元素的内边界上。然后,调整单词和字母间的间隔,使各行的长度恰好相等。您也许已经注意到了,两端对齐文本在打印领域很常见。

需要注意的是,要由用户代理(而不是 CSS)来确定两端对齐文本如何拉伸,以填满父元素左右边界之间的空间。如需了解详情,请参阅 CSS text-indent 属性参考页。

字间隔
word-spacing 属性可以改变字(单词)之间的标准间隔。其默认值 normal 与设置值为 0 是一样的。

word-spacing 属性接受一个正长度值或负长度值。如果提供一个正长度值,那么字之间的间隔就会增加。为 word-spacing 设置一个负值,会把它拉近:

p.spread {word-spacing: 30px;}
p.tight {word-spacing: -0.5em;}

<p class="spread">
This is a paragraph. The spaces between words will be decreased.
</p>

<p class="tight">
This is a paragraph. The spaces between words will be increased.
</p>
实例 TIY :增加或减少单词间距(字间隔)

CSS word-spacing 属性参考页。

字母间隔
letter-spacing 属性与 word-spacing 的区别在于,字母间隔修改的是字符或字母之间的间隔。

与 word-spacing 属性一样,letter-spacing 属性的可取值包括所有长度。默认关键字是 normal(这与 letter-spacing:0 相同)。输入的长度值会使字母之间的间隔增加或减少指定的量:

h1 {letter-spacing: -0.5em}
h4 {letter-spacing: 20px}

<h1>This is header 1</h1>
<h4>This is header 4</h4>
实例 TIY :规定字符间距(字母间隔)

字符转换
text-transform 属性处理文本的大小写。这个属性有 4 个值:

none
uppercase
lowercase
capitalize
默认值 none 对文本不做任何改动,将使用源文档中的原有大小写。顾名思义,uppercase 和 lowercase 将文本转换为全大写和全小写字符。最后,capitalize 只对每个单词的首字母大写。

作为一个属性,text-transform 可能无关紧要,不过如果您突然决定把所有 h1 元素变为大写,这个属性就很有用。不必单独地修改所有 h1 元素的内容,只需使用 text-transform 为你完成这个修改:

h1 {text-transform: uppercase}使用 text-transform 有两方面的好处。首先,只需写一个简单的规则来完成这个修改,而无需修改 h1 元素本身。其次,如果您以后决定将所有大小写再切换为原来的大小写,可以更容易地完成修改。

实例 TIY :控制文本中字母的大小写

文本装饰
接下来,我们讨论 text-decoration 属性,这是一个很有意思的属性,它提供了很多非常有趣的行为。

text-decoration 有 5 个值:

none
underline
overline
line-through
blink
不出所料,underline 会对元素加下划线,就像 HTML 中的 U 元素一样。overline 的作用恰好相反,会在文本的顶端画一个上划线。值 line-through 则在文本中间画一个贯穿线,等价于 HTML 中的 S 和 strike 元素。blink 会让文本闪烁,类似于 Netscape 支持的颇招非议的 blink 标记。

none 值会关闭原本应用到一个元素上的所有装饰。通常,无装饰的文本是默认外观,但也不总是这样。例如,链接默认地会有下划线。如果您希望去掉超链接的下划线,可以使用以下 CSS 来做到这一点:

a {text-decoration: none;}
还可以在一个规则中结合多种装饰。如果希望所有超链接既有下划线,又有上划线,则规则如下:

a:link a:visited {text-decoration: underline overline;}不过要注意的是,如果两个不同的装饰都与同一元素匹配,胜出规则的值会完全取代另一个值。请考虑以下的规则:

h2.stricken {text-decoration: line-through;}
h2 {text-decoration: underline overline;}
对于给定的规则,所有 class 为 stricken 的 h2 元素都只有一个贯穿线装饰,而没有下划线和上划线,因为 text-decoration 值会替换而不是累积起来。

处理空白符
white-space 属性会影响到用户代理对源文档中的空格、换行和 tab 字符的处理。

通过使用该属性,可以影响浏览器处理字之间和文本行之间的空白符的方式。从某种程度上讲,默认的 XHTML 处理已经完成了空白符处理:它会把所有空白符合并为一个空格。所以给定以下标记,它在 Web 浏览器中显示时,各个字之间只会显示一个空格,同时忽略元素中的换行:

<p>This     paragraph has    many
    spaces           in it.</p>可以用以下声明显式地设置这种默认行为:

p {white-space: normal;}上面的规则告诉浏览器按照平常的做法去处理:丢掉多余的空白符。如果给定这个值,换行字符(回车)会转换为空格,一行中多个空格的序列也会转换为一个空格。

实例 TIY :white-space: normal

值 pre
不过,如果将 white-space 设置为 pre,受这个属性影响的元素中,空白符的处理就有所不同,其行为就像 XHTML 的 pre 元素一样;空白符不会被忽略。

如果 white-space 属性的值为 pre,浏览器将会注意额外的空格,甚至回车。在这个方面,而且仅在这个方面,任何元素都可以相当于一个 pre 元素。

实例 TIY :white-space: pre


值 nowrap
与之相对的值是 nowrap,它会防止元素中的文本换行,除非使用了一个 br 元素。在 CSS 中使用 nowrap 非常类似于 HTML 4 中用 <td nowrap> 将一个表单元格设置为不能换行,不过 white-space 值可以应用到任何元素。

实例 TIY :white-space: nowrap

值 pre-wrap 和 pre-line
CSS2.1 引入了值 pre-wrap 和 pre-line,这在以前版本的 CSS 中是没有的。这些值的作用是允许创作人员更好地控制空白符处理。

如果元素的 white-space 设置为 pre-wrap,那么该元素中的文本会保留空白符序列,但是文本行会正常地换行。如果设置为这个值,源文本中的行分隔符以及生成的行分隔符也会保留。pre-line 与 pre-wrap 相反,会像正常文本中一样合并空白符序列,但保留换行符。

实例 TIY :white-space: pre-wrap

实例 TIY :white-space: pre-line


总结
下面的表格总结了 white-space 属性的行为:

值 空白符 换行符 自动换行
pre-line 合并 保留 允许
normal 合并 忽略 允许
nowrap 合并 忽略 不允许
pre 保留 保留 不允许
pre-wrap 保留 保留 允许

文本方向
如果您阅读的是英文书籍,就会从左到右、从上到下地阅读,这就是英文的流方向。不过,并不是所有语言都如此。我们知道古汉语就是从右到左来阅读的,当然还包括希伯来语和阿拉伯语等等。CSS2 引入了一个属性来描述其方向性。

direction 属性影响块级元素中文本的书写方向、表中列布局的方向、内容水平填充其元素框的方向、以及两端对齐元素中最后一行的为止。

unicode-bidi 属性设置为 embed 或 bidi-override 时才会应用 direction 属性。

direction 属性有两个值:ltr 和 rtl。大多数情况下,默认值是 ltr,显示从左到右的文本。如果显示从右到左的文本,应使用值 rtl。

CSS 文本实例:
设置文本颜色
本例演示如何设置文本的颜色。
设置文本的背景颜色
本例颜色如何设置部分文本的背景颜色。
规定字符间距
本例演示如何增加或减少字符间距。
使用百分比设置行间距
本例演示如何使用百分比值来设置段落中的行间距。
使用像素值设置行间距
本例演示如何使用像素值来设置段落中的行间距。
使用数值来设置行间距
本例演示如何使用一个数值来设置段落中的行间距。
对齐文本
本例演示如何对齐文本。
修饰文本
本例演示如何向文本添加修饰。
缩进文本
本例演示如何缩进文本首行。
控制文本中的字母
本例演示如何控制文本中的字母。
在元素中禁止文本折行
本例演示如何禁止在元素中的文本折行。
增加单词间距
本例演示如何增加段落中单词间的距离。
CSS 文本属性
属性 描述
color 设置文本颜色
direction 设置文本方向。
line-height 设置行高。
letter-spacing 设置字符间距。
text-align 对齐元素中的文本。
text-decoration 向文本添加修饰。
text-indent 缩进元素中文本的首行。
text-shadow 设置文本阴影。CSS2 包含该属性,但是 CSS2.1 没有保留该属性。
text-transform 控制元素中的字母。
unicode-bidi 设置文本方向。
white-space 设置元素中空白的处理方式。
word-spacing 设置字间距。
原作者:http://blog.163.com/smile_mz/blog/static/12185576320096112853932/
分享到:
评论

相关推荐

    CSS--文本溢出完美样式

    "CSS--文本溢出完美样式"这一主题聚焦于解决一个常见的问题:当文本内容过多,超出其容器的边界时,如何优雅地处理这种情况。以下是对这个知识点的详细讲解: 1. **文本溢出的基本概念**:在HTML元素中,如果文本...

    css基础-梦之都教学

    CSS文本** - `letter-spacing`:调整字符间距。 - `word-spacing`:调整单词间距。 - `text-decoration`:添加下划线、删除线等装饰。 - `text-transform`:控制文本的大小写。 - `text-align`:设置文本的水平对齐...

    css3-文本实例.html

    同前

    css3-ul-ol列表

    在网页设计中,CSS3(层叠样式表第三版)为开发者提供了丰富的样式控制功能,尤其是在处理无序列表(`ul`)和有序列表(`ol`)时,可以创造出各种美观、富有创意的列表样式。`ul`列表通常用于展示项目列表,而`ol`...

    CSS基础知识-1.pdf

    ### CSS基础知识解析 #### 一、CSS简介 - **1.1 HTML的局限性** HTML是一种用于构建网页内容的标准标记语言。它主要用于定义网页内容的结构和意义,例如使用`&lt;h1&gt;`标签来表示一级标题,使用`&lt;p&gt;`标签来表示段落...

    css-literal-loader, 将CSS标记的模板文本解析为CSS文件.zip

    css-literal-loader, 将CSS标记的模板文本解析为CSS文件 css-literal-loader用于提取和处理其他文件中定义的css的web pack加载器和babel插件。"inline CSS",它只适用于 CSS 。PostCSS 。LESS 。tlb或者任何它的他...

    css基础教程--CSS快速入门、怎样编写CSS、CSS属性、CSS定位、CSS滤镜 

    这个“CSS基础教程”涵盖了CSS的快速入门、编写方法、属性、定位以及滤镜等核心概念,旨在帮助初学者掌握网页设计的基本技能。 1. CSS快速入门: CSS的引入是为了分离内容(HTML)和表现(样式)。通过在HTML文档...

    头歌教学实践平台 Web前端开发基础 CSS-文本与字体样式

    在Web前端开发中,CSS...通过学习和实践这些CSS文本与字体样式,你可以创建更加精致且适应性强的网页。头歌教学实践平台提供的源码txt格式资料,将帮助你更好地理解和应用这些知识点,进一步提升你的Web前端开发技能。

    CSS3-Tom猫动画

    标签“h5”和“CSS3”表明这个项目是基于HTML5和CSS3技术的,这包括了新的选择器、盒模型、边框和背景、文本渲染、多列布局以及动画和转换等功能。CSS3的转换(transform)属性允许元素在二维或三维空间中改变形状、...

    CSS基础1-基础选择器+字体文本相关样式

    本资源摘要信息涵盖了CSS基础知识点,包括基础认知、基础选择器、字体和文本样式、Chrome调试工具、综合案例等方面的知识点。 一、基础认知 * CSS的介绍:层叠样式表(Cascading style sheets) * CSS的作用:给...

    optimize-css-assets-webpack-plugin:一个Webpack插件,用于优化\最小化CSS资产

    解决 CSS复制问题: 由于仅捆绑(合并)文本块,因此,如果用于捆绑CSS,则捆绑可能包含重复的条目(块可以免费重复,但合并后可以创建重复CSS)。安装: 使用npm: $ npm install --save-dev optimize-css-assets-...

    css3-button4

    另外,CSS3还引入了文字阴影(text-shadow)属性,可以为按钮上的文本添加阴影,使其在不同背景下更具可读性。结合字体大小、字体家族和文字颜色,我们可以定制出个性化的按钮文本样式。 对于兼容性问题,开发者需要...

    css----中文教程

    本教程将全面解析CSS的基础知识,帮助您深入理解其结构和属性,从而更好地进行网页布局和美化。 一、CSS结构 CSS的基本结构由选择器和声明组成。选择器指向我们想要应用样式的元素,而声明则定义了这些元素的样式...

    cssbox-4.11源码及jar包

    1. **CSS解析器**:CSSBox的源码包含了一个高效的CSS解析模块,它能将CSS文本转换为内部表示形式,如CSSRule对象。解析器遵循W3C的CSS规范,支持CSS2.1和部分CSS3特性。 2. **CSS盒模型**:CSSBox实现了CSS盒模型,...

    Css样式 -实例练习

    ### CSS样式实例练习详解 ...通过这些实例练习,我们不仅掌握了CSS基础语法的应用,还学会了如何创建、编辑及应用外部样式表,以及如何精细控制网页元素的样式。这为更高级的Web设计技巧奠定了坚实的基础。

    HTML&CSS;-炫酷的链接动效

    《HTML5与CSS3基础教程》(第8版)高清PDF版 本书自第1版至今,一直是讲解HTML和CSS入门知识的经典畅销书,全面系统地阐述HTML5和CSS3 基础知识以及实际运用技术,通过大量实例深入浅出地分析了网页制作的方方面面。...

    网页用css排列文本呈圆型

    一个名为`css`的文件,很可能是CSS样式表,用于定义文本的布局和样式;以及一个`img`文件夹,可能包含用于辅助布局或装饰的图像资源。 首先,让我们深入了解一下如何使用CSS来排列文本呈圆形。在CSS中,我们通常会...

    css3-text-bubble-tips.zip

    标题中的“css3-text-bubble-tips”暗示了这是一个关于CSS3实现文本气泡提示的教程或示例集合。在Web开发中,文本气泡通常用于创建提示、通知或者对话框,它们通常有一个指向相关元素的箭头。CSS3是CSS(层叠样式表...

    前端开源库-postcss-banner

    "前端开源库-postcss-banner"就是一个这样的工具,它专注于一个特定的任务:向生成的CSS文件添加文本横幅。这个库是基于PostCSS构建的,PostCSS是一个强大的CSS处理器,能够转换CSS代码,添加未来特性或者进行各种...

Global site tag (gtag.js) - Google Analytics