CSS 盒模型是基石,文本和字体则是盒子内容的重要组成部分。毕竟清水房有了,软装也得跟上啊。

字体常用属性

  1. font-family

    定义字体类型(如: Arial, "Microsoft YaHei", sans-serif)。

    特别说明,字体定义有优先级,比如:

    font-family: Inter, "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", 微软雅黑, Arial, sans-serif;

    以上规则会优先命中 Inter 字体,如果电脑中找到此字体,则不会再往后查找;如果找不到,会继续找下一个字体 Helvetica Neue;如果定义的字体都找不到,则会使用系统默认字体。

  2. font-size

    设置字体大小(如: 16px1.6em),em 单位是相对于父元素的字体大小,1.6em就是父元素的字体 1.6 倍。

  3. font-weight

    控制字体粗细(如: normalbold300,其中 bold700 是等效的)。

  4. font-style

    设置斜体(如: italicnormal)。

  5. font(简写属性)

    组合多个属性(如: font: italic bold 16px/1.5 Arial),font 它可以揉进去这么多个属性,内部空间巨大:

文本常用属性

  1. color

    文本颜色(如: #333rgba(0,0,0,0.5))。

  2. text-align

    水平对齐方式(如: right 居右、center 居中、justify 两端对齐)。

    注意看使用 justify 对齐的文本段落,左右两边与边框之间是不存在简写的,这就是两端对齐。

  3. line-height

    行高(如: 2 表示 2 倍字体大小的行高、24px 表示固定 24px 行高,如果字体大小超过 24px 则可能会文字重叠 )。

    红色圈出来的部分就表示文本的行高,表示一行文字占用空间。

  4. text-decoration

    文本装饰(如: underline 下划线、line-through 删除线、green wavy overline 绿色波浪上划线)。

    除了图中演示部分,线条样式还支持 solid 实线、double 双实线、dotted 点划线、dashed 虚线。

    下划线还可通过 text-underline-offset 控制下划线与文本之间的距离。

  5. text-transform

    大小写转换(如: uppercase 所有大写、lowercase 所有小写、 capitalize 首字母转换为大写)。

  6. letter-spacing

    字符间距(如: 10px-5px 负数表示字符会叠在一起)。

  7. word-spacing

    单词间距(如: 0.5em),多用于英文排版,就表示两个单词之间的空格间距,如下:。

  8. text-indent

    首行缩进(如: 2em),文字段落首行的缩进距离,比如读书时痛苦的写作文时候要求首行要空两格,就是这个用处。

  9. vertical-align

    垂直对齐(如: topmiddlebottom,常用于行内元素),这属性完全可以展开细说,对齐方式有很多特别之处。

  10. white-space

    空白处理(如: nowrap 不换行,常用于显示省略号、pre 原样输出,常用于代码输出)。

    正常文本显示时候,多个空白字符会被浏览器合并为一个(如:段落一),nowrap 强制文本不换行(段落二),pre 则会原样输出(段落三)。

  11. text-overflow

    溢出文本处理(如: ellipsis,需配合 overflow: hidden),如上图。

  12. text-shadow

    文本阴影(如: 2px 2px 4px rgba(0,0,0,0.5))。

  13. direction

    文本方向(如: rtl 从右到左)。

其他相关属性

  • @font-face

    自定义字体(引入外部字体文件),多用于英文自定义字体,毕竟英文就26个字母组合,而汉字却有上万多个,字体文件都以兆为单位计算,带宽受限,所以自定义字体就比较鸡肋了。

    @font-face 出现后图标也常用自定义字体的方式引入,可参考 https://www.iconfont.cn/

  • font-display

    控制字体加载时的显示行为(如: swapblock),通常配合自定义字体使用。

使用方式如下:

@font-face {
font-family: ExampleFont;
src: url(https://mdn.github.io/css-examples/web-fonts/VeraSeBd.ttf) format('woff'),
url(/path/to/fonts/examplefont.eot) format('eot');
font-weight: 400;
font-style: normal;
font-display: fallback;
} .font1 {
font-family: ExampleFont;
}

总结

本文介绍了 CSS 中常见的文本与字体使用方式,实际开发中,文本和字体属性常结合使用,例如:

p {
font: 16px/1.5 Arial;
color: #333;
text-align: justify;
text-shadow: 1px 1px 2px #ccc;
}

Web前端入门第 30 问:CSS 文本与字体样式常用属性的更多相关文章

  1. 好程序员web前端分享值得参考的css理论:OOCSS、SMACSS与BEM

    好程序员web前端分享值得参考的css理论:OOCSS.SMACSS与BEM 最近在The Sass Way里看到了Modular CSS typography一文,发现文章在开头部分就提到了OOCS ...

  2. web前端入坑第五篇:秒懂Vuejs、Angular、React原理和前端发展历史

    秒懂Vuejs.Angular.React原理和前端发展历史 2017-04-07 小北哥哥 前端你别闹 今天来说说 "前端发展历史和框架" 「前端程序发展的历史」 「 不学自知, ...

  3. 进击的Python【第十三章】:Web前端基础之HTML与CSS样式

    进击的Python[第十四章]:Web前端基础之HTML与CSS样式 一.web框架的本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客 ...

  4. 好程序员web前端分享18个用CSS制作出来的东西

    好程序员web前端分享18个用CSS制作出来的东西,与流行的看法相反,CSS不仅仅是用来提供一个WEB页面的基本风格,以使它看起来更有吸引力.还有很多其他的事情,CSS也可以做的很好.由于它创建动画和 ...

  5. Android零基础入门第30节:两分钟掌握FrameLayout帧布局

    原文:Android零基础入门第30节:两分钟掌握FrameLayout帧布局 前面学习了线性布局.相对布局.表格布局,那么本期来学习第四种布局--FrameLayout帧布局. 一.认识FrameL ...

  6. CSS样式常用属性整理

    web工程师是最近5年刚刚兴起的一门高薪职业,人们的专注度越来越高. 那么前端除了学习html标签之外还需要掌握什么知识点呢? 为大家整理了一个和HTML标签密不可分的知识要点--<CSS样式常 ...

  7. 【CSS学习】--- 字体样式

    一.前言 CSS字体属性可以定义文本的字体系列.大小.加粗.颜色.风格(如斜体)和变形(如小型大写字母). CSS的字体属性: font-family 设置字体系列 font-size 设置字体的尺寸 ...

  8. css中的字体样式及元素样式

    css中的字体样式一般包含有就9中,常见的有7种.这7种依次为: 1.字体样式:font-family: 2.字体大小:font-size: 3.字体加粗:font-weight: 4.字体斜体:fo ...

  9. Flutter 基础组件:文本、字体样式

    // 文本.字体样式 import 'package:flutter/material.dart'; class TextFontStyle extends StatelessWidget { // ...

  10. web前端入坑第二篇:web前端到底怎么学?干货资料! 【转】

    http://blog.csdn.net/xllily_11/article/details/52145172 版权声明:本文为博主[小北]原创文章,如要转载请评论回复.个人前端公众号:前端你别闹,J ...

随机推荐

  1. HashMap知识点

    1.基本数据结构 1. JDK1.7 数组 + 链表 2. JDK1.8 数组 + (链表 | 红黑树) 2.树化与退化 1.树化意义 1.红黑树用来避免Dos攻击,防止链表过长时性能下降,树化应该是 ...

  2. ETL工具--Sqoop

    1. 概述 Sqoop是apache旗下的一款 "Hadoop和关系数据库之间传输数据"的工具导入数据:将MySQL,Oracle导入数据到Hadoop的HDFS.HIVE.HBA ...

  3. 足球预测:将六场预测法引入AI能增加预测准确率么?

    前言 足球预测的历史可以追溯到200多年前,对足球比赛的结果预测一直是人们所津津乐道的话题.你有了解过这期间涌现过多少足球预测的方法么?过去的人们迫于工具和数据的限制,始终不能高概率的预测足球赛事,但 ...

  4. ORACLE多表级联更新( MERGE、UPDATE FROM JOIN替代语句)

    方法一:MERGE语句的语法 MERGE INTO 表名 USING 表名/视图/子查询 ON 连接条件 --多个条件注意()括起来 WHEN MATCHED THEN -- 当匹配得上连接条件时 更 ...

  5. 从购物找零到两数之和:一道经典算法题的深度解析|LeetCode 1 两数之和

    LeetCode 1 两数之和(Two Sum) 点此看全部题解 LeetCode必刷100题:一份来自面试官的算法地图(题解持续更新中) 生活中的算法 还记得上次去超市购物吗?你拿着一张100元钞票 ...

  6. 一键实现风险识别+处理,天翼云AOne助手尽在“掌”握!

    随着企业数字化建设的不断加速,优化站点性能与响应速度成为当今时代的一个重要课题.对于政务.金融类机构来说,其门户网站.信用卡中心等代表着对外形象,如果出现访问不通或者时延严重的现象将影响业务办理效率以 ...

  7. changeServer.sh一键切换服务器脚本

    直接看改进版2.0 切换服务器,免密登录vi changeServer.sh #!/bin/bash #authe by wangxp export IFCFG=/etc/sysconfig/netw ...

  8. Recent 做题记录(重写)

    重构. 2023.9 CF922D 考虑交换法即可.Livshits-Kladov 定理. CF1528C 第一棵树上是一条链:第二棵树上使用数据结构维护贪心(小的区间比大的更优:树上具有包含/无交性 ...

  9. ABB机器人IO板DSQC651维修检查方法

    ABB机器人作为工业自动化的重要设备,其稳定性和可靠性对于生产线的持续运行至关重要.然而,在实际使用中,由于各种原因,可能会出现ABB机器人IO板DSQC651故障,影响机器人的正常运行. 一.ABB ...

  10. 使用Bioaider进行本地blast

    系统环境为windows11 1. 下载blast程序 https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ 双击安装,记住自己的 ...