CSS不直接添加文本内容,而是通过样式控制文本的外观。使用color、font-family、font-size等属性设置文本颜色、字体和大小;利用text-align、line-height、letter-spacing等优化排版;通过::before和::after伪元素插入装饰性文字;借助@font-face引入自定义字体提升设计感;针对文本溢出,单行用white-space+text-overflow截断,多行依赖-webkit-line-clamp;结合overflow-wrap处理长词换行;并通过line-height、text-rendering、font-feature-settings等增强可读性与视觉表现,确保响应式与可访问性兼顾。

CSS要说直接‘加字’,那其实是HTML的活儿。CSS真正做的是给那些字穿衣打扮,让它们以我们想要的样子呈现在网页上。它负责定义文本的颜色、大小、字体、间距,甚至是如何处理溢出等等。所以,当我们谈论CSS如何‘加字’时,更多的是在探讨如何精细地控制和美化文本内容,确保它们既美观又易读。它不是用来添加内容本身的,而是赋予内容生命和风格的魔法。
当我们需要在网页上展示文本时,首先会在HTML中写入内容,例如
<p>这是一段文本。</p>
基本文本样式设置:
color
color: #333;
color: rgb(255, 0, 0);
font-family
font-family: "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size
px
%
rem
font-size: 1.6rem;
font-weight
normal
bold
font-weight: 500;
bold
font-style
normal
italic
text-align
left
right
center
justify
justify
text-decoration
underline
line-through
none
text-decoration: none;
line-height
font-size
px
em
line-height: 1.6;
letter-spacing
word-spacing
text-transform
uppercase
lowercase
capitalize
text-shadow
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
white-space
nowrap
pre-wrap
overflow-wrap
word-break
overflow-wrap: break-word;
通过伪元素“添加”文本:
立即学习“前端免费学习笔记(深入)”;
虽然CSS不直接添加主体内容,但通过
::before
::after
p::before {
content: "前缀:"; /* 这里的“前缀:”就是CSS“加”的字 */
color: gray;
font-weight: bold;
margin-right: 5px;
}
p::after {
content: " (完)";
font-size: 0.8em;
color: #999;
}这在给列表项添加图标、或者为特定元素添加说明时非常有用。
引入自定义字体是提升网页视觉风格的关键一步,它能让你的设计跳出系统字体的限制。我个人觉得,一个独特的字体能瞬间提升网站的品牌感和专业度。
要实现这一点,主要通过
@font-face
@font-face {
font-family: 'MyCustomFont'; /* 给你的字体起个名字 */
src: url('fonts/MyCustomFont.woff2') format('woff2'), /* 优先加载woff2,因为它压缩率高,性能好 */
url('fonts/MyCustomFont.woff') format('woff'),
url('fonts/MyCustomFont.ttf') format('truetype'); /* 兼容性考虑 */
font-weight: normal; /* 字体的粗细,如果一个字体文件包含多种粗细,可以定义多个@font-face */
font-style: normal; /* 字体的样式,如斜体 */
font-display: swap; /* 这是一个很重要的属性,决定字体加载时的行为 */
}
/* 然后,你就可以在CSS中像使用系统字体一样使用它了 */
h1 {
font-family: 'MyCustomFont', sans-serif; /* 记得加上备用字体,以防自定义字体加载失败 */
}这里有几个我常遇到的坑和一些心得:
WOFF2
WOFF
TTF
OTF
font-display
swap
url()
文本溢出是前端开发中很常见的问题,尤其是在响应式设计中,内容长度不确定时很容易出现。我坦白说,这玩意儿处理起来有时候挺让人头疼的,特别是多行截断。
单行文本溢出截断(省略号)
这是最常见也相对简单的场景,通常用于标题、列表项等。
.single-line-ellipsis {
white-space: nowrap; /* 强制文本不换行 */
overflow: hidden; /* 隐藏溢出部分 */
text-overflow: ellipsis; /* 将溢出部分替换为省略号 */
width: 200px; /* 或者设置max-width,容器必须有明确宽度 */
}这里需要注意的是,
width
max-width
多行文本溢出截断(省略号)
这个就稍微复杂一点了,因为CSS原生支持的方案并不理想,我们通常会依赖于一个Webkit内核的私有属性。
.multi-line-ellipsis {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box; /* 必须结合这个属性 */
-webkit-line-clamp: 3; /* 限制文本显示3行 */
-webkit-box-orient: vertical; /* 必须结合这个属性,设置或检索伸缩盒对象的子元素的排列方式 */
/* 注意:这个方案在非Webkit内核浏览器(如Firefox)中不完全支持,需要备用方案或JS */
}对于Firefox等非Webkit浏览器,可能需要使用JavaScript来实现多行文本截断,或者采取一些折衷方案,比如只显示固定高度,溢出部分隐藏,但不显示省略号。这是一个典型的跨浏览器兼容性挑战。
文本换行策略
除了截断,控制文本如何换行也同样重要。
word-wrap
overflow-wrap
overflow-wrap
.break-word-container {
overflow-wrap: break-word; /* 允许在长单词或URL内部断行 */
}这对于处理URL、很长的技术名词等非常有用,避免它们撑破布局。
word-break
normal
break-all
keep-all
break-word
overflow-wrap: break-word
overflow-wrap: break-word
在实际项目中,我通常会优先使用
overflow-wrap: break-word;
文本的可读性和用户体验远不止于选择一个好看的字体和合适的大小,它涉及到一系列微妙的视觉和排版细节。对我而言,这些细节才是真正体现设计师和开发者功力的地方。
行高(line-height
line-height
1.4
1.8
font-size
字符间距(letter-spacing
letter-spacing
letter-spacing
0.05em
文本渲染(text-rendering
text-rendering
optimizeLegibility
geometricPrecision
text-rendering: optimizeLegibility;
连字和字体特性(font-feature-settings
font-feature-settings
/* 开启连字,比如fi、fl等会合并成一个字符 */
p {
font-feature-settings: "liga", "clig";
}
/* 开启小型大写字母 */
.small-caps {
font-feature-settings: "smcp";
}这在排版印刷品风格的文本时特别有用。
响应式字体大小: 在不同的屏幕尺寸下,固定的字体大小可能不合适。结合媒体查询(
@media
vw
vh
body {
font-size: 16px; /* 默认字体大小 */
}
@media (min-width: 768px) {
body {
font-size: 18px; /* 在平板尺寸以上,字体稍大 */
}
}
h1 {
font-size: 5vw; /* 标题大小随视口宽度变化 */
min-font-size: 24px; /* 设置最小字体大小 */
max-font-size: 60px; /* 设置最大字体大小 */
}这里我喜欢用
clamp()
font-size: clamp(1rem, 2.5vw, 2.5rem);
文本阴影(text-shadow
color
text-shadow
.hero-text {
color: white;
text-shadow: 0 0 5px rgba(0, 0, 0, 0.6); /* 黑色阴影,增加对比度 */
}可访问性(Accessibility): 最后但同样重要的是,所有这些优化都应该考虑到可访问性。确保文本颜色与背景有足够的对比度(WCAG标准),避免使用纯粹的颜色来传达信息,因为色盲用户可能无法识别。使用语义化的HTML结构,并确保文本内容可以通过屏幕阅读器正确读取。
这些看似微小的调整,叠加起来就能显著改善用户阅读体验,让你的网页内容不仅仅是“显示”,更是“呈现”。
以上就是CSS怎么加字_CSS文本添加与字体样式设置教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号