CSS设置文本

news2024/11/23 9:15:28

目录

概述:

text-aling:

text-decoration:

text-transform:

text-indent:

line-height:

letter-spacing:

word-spacing:

text-shadow:

vertical-align:

white-space:

direction:


概述:

在CSS中我们可以设置文本的属性,就像Word文档那样可以定义网页中的文本间距或者对齐方式又或者缩进等等。CSS文本常用的属性如下所示:

  • text-aling:用来控制文本水平的对齐方式。
  • text-decoration:用来控制文本的装饰。
  • text-transform:用来控制文本中英文大小写转换方式。
  • text-indent:用来控制文本的缩进方式。
  • line-height:用来控制行高。
  • letter-spacing:用来控制字符之间的间距。
  • word-spacing:用来控制单词和单词之间的间距(中文无效)。
  • text-shadow:用来控制文本的阴影。
  • vertical-align:用来控制文本的垂直和对齐的方式。
  • white-space:用来控制对文本中空白的处理方式。
  • direction:用来控制文本的方向。

初识CSS-CSDN博客  CSS设置字体样式-CSDN博客

如下就来一 一对上述的属性进行说明和使用:

text-aling:

text-align属性是用来控制元素里文本的水平对齐方式,其可选值如下所示:

说明
left默认值,左对齐。
right右对齐。
center

居中对齐。

justify两端对齐。
inherit从父元素中继承text-align属性值。

如下是text-align个值的使用代码,如下所示:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        ul {
            border: 1px solid red;
            width: 500px;
        }

        .left {
            text-align: left;
        }

        .right {
            text-align: right;
        }

        .center {
            text-align: center;
        }

        .inherit {
            text-align: inherit;

        }
    </style>
</head>

<body>
    <ul class="parent">
        默认
        <li class="left">left</li>
        <li class="right">right</li>
        <li class="center">center</li>
        <li class="inherit">inherit</li>
    </ul>

</body>

</html>

 上述代码运行结果如下所示:其中默认文本并无变化以及继承父元素的inherit根默认也是相同的,而left也靠左对齐了(可能是大多数文本默认是靠左对齐的所以很难看出来变化但left是被设置靠左对齐的),而right文本也是靠近最右边了,其中center居中了,inherit继承父元素,而这里的父元素并无太多属性所以并无太大变化。

text-decoration:

在CSS中我们如果要装饰文本可以使用text-decoration属性,其可以设置下划线删除线 当然我可以也可以使用此属性来消除<a>标签自带的下划线。其可选值如下所示:

说明
none默认值,啥都没得,就是正常的文本,一般用来消除已经设置的属性。
underline就是在文本下面加 下划线。
overline就是在文本上面加上划线。
line-through就是在文本的中间加一条线效果像删除线
inherit从元素里继承对text-decoration的设置。

如下是CSS使用text-decoration为文本设置装饰的示例:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .none {
            text-decoration: none;
        }

        .underline {
            text-decoration: underline;
        }

        .overline {
            text-decoration: overline;
        }

        .line-through {
            text-decoration: line-through;
        }
    </style>
</head>

<body>
    <ol>
        <li class="none">啥都没有</li>
        <li class="underline">有一条下划线</li> <br>
        <li class="overline">有一条上划线</li>
        <li class="line-through">有一条中划线类似删除线</li>
        inherit不设置了,因为父元素没啥好继承的
    </ol>
</body>

</html>

上述代码的运行结果如下所示: 其中第一条是默认的文本,第二条的文本有一条下划线 第三条的文本有一条上划线,第四条的文本有一条删除线,最后inherit则不设置了因为父元素没设置啥text-decoration属性。

text-transform:

在CSS中我们若要控制中英文字母的大小写可以使用text-transform属性来设置,该属性可以把字母都变成小写字母或者大写字母等等,其属性的值如下所示:

说明
none默认的值,文本将以原本的形式显示在网页中。
capitalize把文本每个单词的首字母大写。如:Add,Class。
uppercase把字母改为全部大写,如:ADD,CLASS。
lowercase把字母全部改为小写,如:DOCTYPE变成doctype.
inherit此属性是继承父元素中对于text-transform的设置。

示例代码如下所示:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .none {
            text-transform: none;
        }

        .capitalize {
            text-transform: capitalize;
        }

        .uppercase {
            text-transform: uppercase;
        }

        .lowercase {
            text-transform: lowercase;
        }
    </style>
</head>

<body>
    <ol>
        <li>none变为:<span class="none">none</span></li>
        <li>capitalize变为:<span class="capitalize">capitalize</span></li>
        <li>uppercAsE变为:<span class="uppercase">uppercase</span></li>
        <li>LOWERCASe变为:<span class="lowercase">lowercase</span></li>
    </ol>
</body>

</html>

上述代码的运行结果如下所示:此处并无难点所以不过多解释。

text-indent:

        我们若要给文本的首行添加缩进就需要用到CSS中的text-indent属性,该属性的值如下所示:

说明
length可以使用数值单位来设置缩进的距离,如像素px,如果不设置那么默认值是0。也可以设置为负数这样会导致溢出 。
%基于父元素的宽度和百分比来设置缩进。也可以设置为负数这样会导致溢出。
inherit从父元素中继承关于text-indext的设置

如下是使用text-indent的示例:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        div {
            border: red 1px solid;
            width: 200px;

        }

        .length {
            text-indent: 20px;
        }

        .unit {
            text-indent: 5%;
        }
    </style>
</head>

<body>
    <div>
        <p class="unit">此行是设置了%的缩进</p>
        <p class="length">此行设置了单位的缩进,这里使用像素单位。</p>
    </div>
</body>

</html>

        上述代码的运行结果如下所示:为文本设置text-indent属性时需要注意的是,缩进是按照文本的text-direction属性来决定的。

line-height:

在CSS中我们可以使用 line-height属性来为文本设置行高,其属性的可选值如下所示:

说明
normal默认值,文本按照正常的方式显示。
number用具体的数字设置行高,这个数字会跟当前字体大小相乘,得到的值就是行高。
length用数字加单位的形式来设置固定的行高。
%用百分比来设置基于字体尺寸百分比的行高。
inherit从父元素中继承对line-height属性的设置。

如下是使用line-height来为文本设置行高:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .number {
            line-height: 0.6;
        }

        .P {
            line-height: 180%;
        }
    </style>
</head>

<body>
    <ol>
        <li>默认的</li>
        <li>默认的</li>
        <li>默认的</li>
        <li>默认的</li>
    </ol>

    <ol class="number">
        <li>比较紧</li>
        <li>比较紧</li>
        <li>比较紧</li>
        <li>比较紧</li>
    </ol>

    <ol class="P">
        <li>有点松</li>
        <li>有点松</li>
        <li>有点松</li>
        <li>有点松</li>
    </ol>

</body>

</html>

上述代码的示例如下:下图可以明显看到,如果行与行之间的距离如果是0到1之间的小数的他们会叠加在一起,并不会挤开。

letter-spacing:

letter-spacing属性用来设置字符之间的间距,该属性的值如下所示:

说明
normal默认值,正常显示,字符之间没额外的有间距。
length用数值加单位来设置字符之间的固定间距(可以使用负值)。
inherit

从父元素中继承letter-spacing的值。 

letter-spacing属性来设置字符之间的间距示例如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        p {
            letter-spacing: 7px;
        }
    </style>
</head>

<body>
    默认的字符没有啥额外的间距
    <p>
        被设置了间距的字符
    </p>

</body>

</html>

上述代码运行结果如下所示: 可以看出第二行中文字之间的间距。

 

word-spacing:

如若你要设置单词与单词之间的距离,就可以使用word-spacing属性,其对中文无效,此属性的可选值如下所示:

说明
normal默认值,也就是正常显示,没有设置间距。

length

用数值加单位来设置单词跟单词之间的间距。
inherit从父元素中继承对word-spacing的设置。

word-spacing代码的示例如下所示:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        p {
            word-spacing: 13px;
        }
    </style>
</head>

<body>
    默认的字符没有啥额外的间距<br>
    word word spacingadd
    <p>
        word word spacingadd
    </p>

</body>

</html>

上述代码的运行结果如下所示:可以明显看到最后一行中单词之间的间距。

text-shadow:

我们若要设置有阴影或者默认的字体效果就需要使用text-shadow属性来设置,其语法格式如:

text-shadow:h-shadow v-shadow blur color;  语法说明如下:

  • h-shadow:必须设置,其影响的是阴影的水平位置,可以设置为负数。
  • v-shadow:必须设置,其影响的是垂直的位置,也可以设置为负数。
  • blur:可选的值,其影响的是模糊的距离。
  • color:可选的值,其影响的是阴影的颜色。

text-shadow属性可以设置多个阴影效果,不过要用 , 号分隔,如下是此属性的示例代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* p {
            word-spacing: 13px;
        } */

        p {
            text-shadow: 1px 3px yellow, 0px -3px 5px aqua;
        }

        span {
            text-shadow: 5px 10px violet;
        }
    </style>
</head>

<body>
    默认的字符没有啥额外的阴影效果<br>
    <p>
        text-shadow被设置了的
    </p>
    <span>
        text-shadow第二个示例
    </span>

</body>

</html>

上述代码的运行结果如下所示:可以看到第二行有两种效果叠加,也就是上述设置的而设置时一定要用,逗号隔开。第三行只设置了一种效果所以非常明显。

vertical-align:

我们可以使用vertical-align来给文本设置其的对齐方式,其可选的值如下所示:

说明
baseline默认值,将元素的基线与父元素的基线对齐。
sub下标对齐,将元素的基线相对于父元素的基线降低。
super上标对齐,将元素的基线相对于父元素的基线升高。
top顶部对齐,将元素行内框的顶端与行框的顶端对齐。
text-top文本顶部对齐,把元素的顶端与父元素字体的顶端对齐。
middle居中对齐,通常使用在图片上,将图片垂直方向的中线与文本的中线(文字元素行内框的中线)对齐。
bottom底部对齐,将元素行内框的顶端与行框的底端对齐。
text-bottom文本底部对齐,是将元素行内框的底端与行框的底线对齐。
length以数字加单位的形式设置元素基线距离父元素基线的距离(可以为负值)。
%使用 "line-height" 属性的百分比值来排列此元素,允许使用负值。
inherit从父元素中继承对vertical-align属性的设置。

上述中的基线、底线、顶线、中线等,他们指的是:

  • 顶线:中文汉字的上边沿;
  • 中线:贯穿小写英文字母 x 中间的线;
  • 基线:小写英文字母 x 的下边沿;
  • 底线:中文汉字的下边沿;
  • 内容区:指底线与顶线包裹的区域;
  • 行高:包括内容区与以内容区为基础对称拓展的空白区域,我们称之为行高,也可以认为是相邻文本行基线间的距离;
  • 行距:指相邻文本行间上一个文本行底线和下一文本行顶线之间的距离;
  • 行内框:是一个浏览器渲染模型中的概念,无法显示出来,但是它又确实存在,它的高度与行高相同;
  • 行框:同行内框类似的概念,行框是指本行的一个虚拟的矩形框,也是浏览器渲染模式中的一个概念。行框高度等于本行内所有元素中行内框最大的值(以行高值最大的行内框为基准,其他行内框采用自己的对齐方式向基准对齐,最终计算行框的高度)。

示例代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .sub {
            vertical-align: sub;
        }

        .middle {
            vertical-align: middle;
        }
    </style>
</head>

<body>
    <p>
        此文本设置了vertical-align属性,<img class="sub" src="../img/96x96.png" alt=""> 其文本定义了垂直和对齐的方式。
    </p>
    <p>
        此文本设置了vertical-align属性,<img class="middle" src="../img/96x96.png" alt=""> 其文本定义了垂直和对齐的方式。
    </p>
</body>

</html>

上述代码运行结果如下所示:从第一个<p>标签可以看出来设置sub使得文本在最下面显示,可以根据图片来看。第二个<p>中的middle值对文本的影响,让文本居中显示了

white-space:

在文本中如果内容在同一个元素内,但是不在同一行,并且元素前面有空格,比如几个Tab,此时我们可以使用white-space属性来控制。其属性如下所示:

说明
normal默认值,直接忽略,跟以往的显示没啥区别。
pre会保留文本中的空白,比如字体前面的空格。
nowrap文本不会换行,全部在一行显示,如果遇到<br>才会换行。
pre-wrap保留空格,换行跟以往一样。
pre-line合并空格,但会保留换行符。
inherit从父元素中继承对white-space属性的设置。

其示例代码如下所示:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .white-space1 {
            white-space: pre;
        }

        .white-space2 {
            white-space: nowrap;
        }
    </style>
</head>

<body>
    这段文本啥都
    没有设置
    <p class="white-space1">
        我们使用
        white-space
        属性就可以
        去除掉其中的空白
    </p>
    <p class="white-space2">
        这里
        啥都<br>
        没得
        了。
    </p>

</body>

</html>

 上述代码的运行结果如下所示:从第一个<p>标签可以看出来其明显保留了代码里面对文本的空格,从第二个<p>也可以看出来设置了nowrap之后其遇到<br>才会换行不然不会。

direction:

我们可以使用direction来设置文本从哪开始输出,其值如下所示:

说明
ltr默认值,从左往右输出。
rtl文本从右到左输出。
inherit从父元素中继承对direction的设置。

此属性的示例代码如下所示:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .ltr {
            direction: ltr;
        }

        .rtl {
            border: 1px solid red;
            width: 200px;
            direction: rtl;
        }
    </style>
</head>

<body>
    正常的
    <p class="ltr">设置了ltr的</p>
    <p class="rtl">设置了rtl的</p>

</body>

</html>

上述代码运行结果如下所示: 这里我们直接看最后一行,我给他这个属性设置了宽度200px,其内的文本也是按照rtl值,也就是从右到左的输出。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1589270.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

测开面经(Git经典题目,Git入门)

1. GitHub是什么 a. Git是一个分布式版本控制系统&#xff0c;作用是跟踪、管理和协调软件开发项目中的代码更改。 b. 提供了一种有效的方式来管理代码的版本历史&#xff0c;以及多人协作开发的能力。 2. Git的作用有哪些 a. 版本控制&#xff1a;Git可以记录每次代码更改的…

Linux的学习之路:8、Linux调试器-gdb使用

摘要 本章主要是说一下gdb的使用&#xff0c;以及把使用指令放入放个指令手册。 目录 摘要 一、背景 二、使用 1、产生debug文件 2、进入gdb 3、使用指令 三、思维导图 一、背景 Linux调试器gdb的背景主要涉及到Linux程序发布方式和调试需求。 在Linux中&#xff0c…

加速杂交水稻走向世界 政协委员建议在湖南设立一“协会”一“中心”

中新网北京3月8日电 (刘曼)针对中国杂交水稻海外“飘香”的现象&#xff0c;全国政协委员、湖南省政协副主席、民盟湖南省委会主委何寄华建议&#xff0c;在湖南建立杂交水稻国际合作交流协会、设立杂交水稻国际科技合作技术转移中心&#xff0c;支持杂交水稻走向世界。 全国政…

mysql主从复制Slave_SQL_Running: No

1、SHOW SLAVE STATUS \G; Slave_SQL_Running: No 解决方案&#xff1a; 重新同步主库和从库的数据 1、从库先停掉slave stop slave; 2、在主库查看此时的日志文件和位置 show master status; 3、在从库中执行 change master to master_host192.168.2.177,master_userslave…

【MATLAB源码-第187期】基于matlab的人工蜂群优化算法(ABC)机器人栅格路径规划,输出做短路径图和适应度曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 Artificial Bee Colony&#xff08;ABC&#xff09;算法是一种模仿蜜蜂觅食行为的优化算法&#xff0c;它通过模拟蜜蜂群体的社会结构和行为来解决数学优化问题。本文将详细介绍ABC算法的基本原理、算法流程、以及在实际应用…

C语言进阶课程学习记录 - 字符串与常见问题分析

C语言进阶课程学习记录 - 字符串与字符串问题分析 字符串实验-字符串定义实验-字符串作为字符数组使用实验-字符串长度判断小结 字符串问题分析实验-snprintf实验-字符数组,strlen,sizeof实验-字符串相等比较实验-循环右移 本文学习自狄泰软件学院 唐佐林老师的 C语言进阶课程&…

浅入浅出之nginx

目录 工作流程正向代理概念 反向代理概念 nginx反向代理配置文件介绍解释作用 参考文章Nginx 常用指令和操作启动 Nginx测试配置文件快速关闭 Nginx优雅关闭 Nginx重载配置文件查看版本查看编译时的参数查看进程配置用户访问日志配置错误日志设置 web 根目录配置 server 块配置…

3.反转链表

1.题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例 2&#xff1a; 输入&#xff1a;l1 [], l2 [] 输出&…

matplotlib手动调用默认配色

matplotlib 画图有个默认配色方案&#xff0c;在画不同图时会保持一致。如&#xff1a; import numpy as np import matplotlib.pyplot as plt# 图 1 数据 x np.arange(12).astype(np.float32) 1 y1 np.log(x) y2 1 / x y3 np.sin(x) # 图 2 数据 a np.random.randn(200…

光威神策PRO PCIe 5.0 SSD发布,国产固态硬盘进入10G俱乐部

全球半导体供应链的紧张局势和闪存资源的短缺让许多行业都面临着不小的压力 &#xff0c; 连带的也让消费者难以获取物美价廉的闪存产品 。但是&#xff0c;总有一些企业能够逆流而上&#xff0c; 像是 光威科技这家国产存储品牌&#xff0c; 最近就给国内消费者 带来了一个惊喜…

递归、搜索与回溯算法:⼆叉树中的深搜

⼆叉树中的深搜 深度优先遍历&#xff08;DFS&#xff0c;全称为 Depth First Traversal&#xff09;&#xff0c;是我们树或者图这样的数据结构中常⽤的 ⼀种遍历算法。这个算法会尽可能深的搜索树或者图的分⽀&#xff0c;直到⼀条路径上的所有节点都被遍历 完毕&#xff…

工业数据采集平台:从起源到崛起的辉煌历程

关键词&#xff1a;工业数据采集平台, 工业数据采集, 工业数据采集分析,智能化 在当今数字化的时代&#xff0c;工业领域也在经历着深刻的变革。而工业数据采集平台的发展历程&#xff0c;正是这场变革中的重要篇章。 回首过去&#xff0c;工业数据采集曾是一个繁琐而复杂的过…

C++ AVL树底层实现原理

&#x1f493;博主CSDN主页:麻辣韭菜&#x1f493;   ⏩专栏分类&#xff1a;C知识分享⏪   &#x1f69a;代码仓库:C高阶&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多C知识   &#x1f51d;&#x1f51d; 目录 前言 AVL 树 1.1 AVL树的概念 1.2 AVL树…

职场成长秘籍:如何利用团队例会提升自己

在职场中&#xff0c;团队例会是一个重要的沟通和协作平台。通过团队例会&#xff0c;我们可以了解项目进展、分享工作经验、解决问题和制定工作计划。那么&#xff0c;如何利用团队例会提升自己&#xff0c;实现职场成长呢&#xff1f;本文将为您揭晓答案。 一、积极发言&…

编程新手必看,python中循环语句学习(14)

介绍&#xff1a; Python3中的循环语句主要有两种&#xff1a;for循环和while循环。 for循环&#xff1a;用于遍历序列&#xff08;如列表、元组、字符串等&#xff09;中的元素&#xff0c;执行相应的代码块。在每次循环中&#xff0c;序列中的一个元素被赋值给一个变量&#…

暴力枚举法

虽然暴力枚举法有时候效率低&#xff0c;时间复杂度高&#xff0c;但是在面对小规模数据集的时候&#xff0c;暴力枚举法往往是很好的思维利器。 B: 01 串的熵&#xff08;5分&#xff09; 问题描述 #include <iostream> #include <cmath> #include <algorithm…

数据治理项目——深铁集团数据治理规划

目录 一、前言 二、数据治理内容与主要措施 2.1 实施背景 2.2 主要举措 2.2.1 制定数据战略目标 2.2.2 绘制数据治理蓝图 2.2.3 绘制数据治理制度 2.2.4 梳理数据资产目录 三、 应用效果 3.1 数据资产可视化管理 3.2 数据标准治理 3.3 集团大数据平台优化建设 一、…

web服务器是如何运行的?tomcat基本原理

tomcat基本流程 tomcat在启动时将webapps下的每个项目中的web.xml读取&#xff0c;获取相关信息。tomcat只关心Servlet 程序、Filter 过滤器、Listener 监听器&#xff0c;不关心其他类。 tomcat接收到请求后会将请求报文转换成一个httpServletRequest对象&#xff0c;包含请求…

【CSS面试题】Flex实现九宫格

考察知识&#xff1a; flex布局 水平垂直居中的实现 初始效果 代码关键&#xff1a;给父盒子添加以下属性 flex-wrap: wrap; /* 允许换行 */justify-content: space-around; /* 主轴对齐方式 */align-content: space-around; /* 多行在侧轴上的对齐方式 */<!DOCTYPE html&…

【干货】【常用电子元器件介绍】【集成电路】(二)--集成电路的识别和检测

声明:本人水平有限,博客可能存在部分错误的地方,请广大读者谅解并向本人反馈错误。 一、 集成电路型号的识别 集成电路的型号一般都在其表面印刷(或者激光刻蚀)出来。集成电路有各种型号,其 命名也有一定的规律,一般是由前缀、数字编号、后缀组成。前缀主要为英文字母,用来…