打造专业级网页排版:全方位解析专业字体家族font-family实践与全球知名字体库导览

news2024/11/20 7:16:05

在这里插入图片描述

CSS中的字体家族(font-family)属性用于指定文本所使用的字体系列。它允许开发者选择一种或多种字体作为备选,确保在浏览器中以最佳可用字体显示文本。本文将深度解析专业级网页排版中字体家族(font-family)设置的实践技巧,结合全球知名字体库资源的详细介绍与导航,助力读者全方位提升网页设计的视觉美感与可读性。

一、font-family 专业设置实践

1、字体家族的分类

字体家族可以分为两大类:

1.1 特定字体家族(Specific Font Families)

指具体的字体名称,如:

  • 西文字体ArialHelveticaTimes New RomanVerdanaCourier New 等。
  • 中文字体宋体(SimSun)、黑体(SimHei)、微软雅黑(Microsoft YaHei)、华文细黑(STXihei)等。

1.2 通用字体家族(Generic Font Families)

当特定字体无法使用时,浏览器会退回到通用字体家族。通用字体家族包括:

  • serif:衬线字体,如 Times New Roman,适用于正文阅读,尤其是印刷品风格的设计。
  • sans-serif:无衬线字体,如 Arial,适用于屏幕显示和现代、简洁的设计。
  • monospace:等宽字体,如 Courier New,每个字符占用相同宽度,常用于代码示例、终端模拟等需要整齐对齐的场合。
  • cursive:手写体或草书风格的字体,如 Comic Sans。
  • fantasy:装饰性或艺术性的字体,如 Impact。

2、 字体家族的声明

在CSS中,font-family 属性的值是一个优先级排序的字体列表,每个字体之间用逗号分隔。浏览器会按照列表顺序查找可用字体,直到找到一个系统中存在的字体为止。

语法

selector {
  font-family: '字体名称', '备选字体名称', ... , '通用字体家族';
}

示例

body {
  font-family: 'Roboto', Arial, sans-serif;
}

code {
  font-family: 'Fira Code', monospace;
}

/* 使用网络字体 */
@import url('https://fonts.googleapis.com/css?family=Open+Sans');

h1 {
  font-family: 'Open Sans', sans-serif;
}

在这个例子中:

  • body 元素的文本首先尝试使用 Roboto 字体,若未安装则退回到 Arial,如果 Arial 也不可用,则使用任何无衬线字体(sans-serif)。
  • code 元素先尝试使用 Fira Code 这种专为编程设计的等宽字体,如果没有,则使用系统中任何等宽字体(monospace)。
  • h1 元素使用 Google Fonts 提供的 Open Sans 字体,若浏览器未加载成功或不支持,最后使用无衬线字体作为备选。

3、注意事项

  • 字体名称的引号:如果字体名称包含空格或其他特殊字符,必须使用单引号或双引号包围。例如:font-family: 'Pacifico', cursive;
  • 字体的跨平台兼容性:不同的操作系统和浏览器可能支持不同的字体集。因此,提供多个备选字体可以提高跨平台的显示一致性。
  • 中文字体的使用:对于包含中文的网站,需要确保所选用的中文字体在目标用户的系统中普遍可用,或者通过 @font-face 引入网络字体。

4、Ant Design 字体实践

Ant Design 的字体家族中优先使用系统默认的界面字体,同时提供了一套利于屏显的备用字体库,来维护在不同平台以及浏览器的显示下,字体始终保持良好的易读性和可读性,体现了友好、稳定和专业的特性。

font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
  'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
  'Noto Color Emoji';

参考自
https://www.smashingmagazine.com/2015/11/using-system-ui-fonts-practical-guide/
和 http://markdotto.com/2018/02/07/github-system-fonts/

总之,通过合理设置 font-family 属性,可以确保网页文本在各种环境下都能以预期的字体风格显示,提升用户体验和设计的一致性。记得提供备选字体和通用字体家族,以应对目标用户系统中字体缺失的情况。

二、常见的 font-family 网站

以下是一些提供常见字体家族展示、搜索和下载的网站:

  1. Google Fonts (https://fonts.google.com/)

    • Google Fonts是全球最大的免费字体库之一,提供超过1,000种开源字体。用户可以直接在网站上浏览、搜索字体,查看字体样本,并通过提供的链接或API轻松地在网页项目中集成。Google Fonts支持多种语言,包括拉丁语、希伯来语、阿拉伯语、中文等。
  2. Adobe Fonts (https://fonts.adobe.com/)

    • Adobe Fonts(原Typekit)为Creative Cloud订阅用户提供访问数千种高质量字体的权限,其中包括许多知名设计师创作的专业字体。非订阅用户也可以在网站上预览字体并获取购买信息。Adobe Fonts支持网页嵌入,允许用户在网页项目中使用选定的字体。
  3. Font Squirrel (https://www.fontsquirrel.com/)

    • Font Squirrel专注于提供免费的商业用途字体(含完整字符集),用户可以在此下载TrueType (.ttf)、OpenType (.otf)、Web Fonts (.woff, .woff2)等多种格式的字体文件。网站还提供了“Webfont Generator”工具,帮助用户生成适用于网页的字体包。
  4. DaFont (https://www.dafont.com/)

    • DaFont是一个社区驱动的字体分享平台,汇集了大量创意、手绘、装饰性字体,特别适合寻找独特风格字体的用户。字体按照类别、主题、作者等进行分类,便于浏览和搜索。大部分字体免费供个人使用,商业使用需查看并遵循每个字体的许可证条款。
  5. 1001 Free Fonts (https://www.1001freefonts.com/)

    • 1001 Free Fonts提供大量免费字体下载,包括手写字体、装饰字体、衬线字体、无衬线字体等。网站布局直观,方便用户按照字母顺序、流行度、最新发布等标准浏览和搜索字体。字体的许可证信息通常在下载页面提供。
  6. MyFonts (https://www.myfonts.com/)

    • MyFonts是一个大型商业字体市场,销售来自全球各大字体设计工作室的高质量字体。用户可以在网站上试用字体、查看详细信息,并购买字体授权。虽然主要是商业平台,MyFonts也有一部分免费字体可供下载。
  7. FontSpace (https://www.fontspace.com/)

    • FontSpace拥有大量的免费和共享字体资源,用户可以直接下载使用。字体按照风格、用途、作者等分类,便于筛选和发现所需字体。每个字体页面都展示了详细的字符集、许可证信息以及用户评论。

这些网站不仅提供了丰富的字体资源,还常常包括字体样本预览、许可证信息、字体嵌入指南等内容,是设计师和开发者寻找、比较和选用字体家族的理想平台。使用时,请务必遵守每个字体的许可证规定,确保合法合规地在项目中使用字体。

在这里插入图片描述

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

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

相关文章

掌握Python基本语法的终极指南【基本语法部分】

一、基本语法部分 1.简单数据类型 1.1字符串类型及操作 字符串访问: 1.索引访问 mystr"Hello world" #索引访问 print(mystr[0]) #H print(mystr[-1]) #d print(mystr[-7]) #o print(mystr[6]) #w 2.切片访问 [头下标:尾下标] &#x…

车灯合面合壳密封使用UV胶的优缺点是什么呢?汽车车灯的灯罩如果破损破裂破洞了要怎么修复?

车灯合面合壳密封使用UV胶的优缺点是什么呢? 车灯合壳密封使用UV胶的优缺点如下: 优点: 快速固化:UV胶通过紫外线照射可以在短时间内迅速固化,大大缩短了车灯制造的工艺流程时间,提高了生产效率。高度透明&#xff…

SVG批量转为pdf超有效的方式!

最近在整理工作,发现ppt里面画的图智能导出svg格式无法导出pdf格式,由于在线的网站会把我的图片搞乱而且不想下载visio(会把本地的word搞坏),因此琢磨出这种批量转换的方式。 1. 下载并安装Inkscape 下载链接&#xf…

基于Matlab完整版孤立词识别系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 孤立词识别是语音识别领域的一个重要分支,其目标是将输入的语音信号转换为计算机可…

成都爱尔眼科医院《中、欧国际近视手术大数据白皮书2.0》解读会圆满举行

2024年5月12日,爱尔眼科联合中国健康促进基金会健康传播与促进专项基金、新华社新媒体中心与中南大学爱尔眼科研究院、爱尔数字眼科研究所重磅发布《中、欧国际近视手术大数据白皮书2.0》。这是继2021、2022年在国内相继发布《国人近视手术白皮书》、《2022中、欧近…

C++笔试强训day32

目录 1.素数回文 2.活动安排 3.合唱团 1.素数回文 链接https://www.nowcoder.com/practice/d638855898fb4d22bc0ae9314fed956f?tpId290&tqId39945&ru/exam/oj 现将其转化为回文数(这里用字符串存储比较方便转化),然后判断是否为…

无线网卡有几种接口?怎么给电脑选择一款合适的无线网卡?

前言 这篇文章一共有两个问题: 无线网卡有几种接口 怎么给电脑选择一款合适的无线网卡 目测这一期的文章很长很长,但不水。想要给笔记本或台式机升级无线网卡的小伙伴看过来了! 最近有小伙伴问:华硕r555笔记本能不能升级无线…

MySql的环境配置与安装

MySQL 数据库 MySQL是一款关系型数据库 关系型数据库 ​ 基本单位是表,一个表中存储一类信息,表与表之间存在关联关系 sql语言(Structured Query Language) 数据库操作语言也属于一种编程语言,专门用作数据库操作分为三种语言 如下 sql安装使用流程 官网 href https://…

【设计模式】JAVA Design Patterns——Converter(转换器模式)

🔍目的 转换器模式的目的是提供相应类型之间双向转换的通用方法,允许进行干净的实现,而类型之间无需相互了解。此外,Converter模式引入了双向集合映射,从而将样板代码减少到最少 🔍解释 真实世界例子 在真实…

大众汽车集团CARIAD中国领导团队莅临知迪科技考察交流

5月23日,大众汽车集团旗下软件子公司CARIAD中国领导团队莅临知迪科技参观考察,知迪科技COO尹晓航先生率公司技术代表热情接待。 CARIAD中国一行来宾首先参观了知迪科技数采项目改制车。知迪科技软硬件工程师为考察团领导专家们讲解了知迪智驾数采系统&am…

【vs2022】安装copilot和reshaper

直接安装新版vs 17.10 自带集成的copilot支持安装resharper 可以跳过市场里的reshper安装好后依然可以直接使用vs。 resharper 2024.1.2 市场里还是i老版本: copilot 不兼容,这个是之前市场安装的版本 官方建议用vs intall 安装 安裝 GitHub Copilot GitHub.Co…

MySQL之Schema与数据类型优化(五)

Schema与数据类型优化 特殊类型数据 某些类型的数据并不直接与内置类型一致。低于秒级精度的时间戳就是一个例子。另外一个例子是一个IPv4地址。人们经常使用VARCHAR(15)列存储IP地址。然而,它们实际上是32位无符号整数。不是字符串。用小数点将地址分成四段的表示…

ThreadLocal为什么会导致内存泄漏?

问题引出: ThreadLocal是为了解决什么问题而产生的? ThreadLocal发生内存泄漏的根本原因是什么? 如何避免内存泄漏的发生?定义 为了解决多个线程同时操作程序中的同一个变量而导致的数据不一致性的问题。   假设现在有两个线程A…

ASP+ACCESS教师档案管理系统

3.1 系统功能模块图 3.2 E-R模型图 3.3 系统使用流程图 3.4 各个模块功能简介: 本系统分为五个功能模块,它们分别是教师信息录入模块、教师信息修改模块、教师信息查询模块、教师信息打印模块。 下面分别介绍各个模块的功能用途&#x…

社交媒体数据恢复:soma messenger

步骤1:检查备份文件 首先,我们需要确认您是否已开启Soma Messenger的自动备份功能。若已开启,您可以在备份文件中找到丢失的数据。 步骤2:清除缓存并重启应用 有时候,清除Soma Messenger的缓存文件可以帮助恢复丢失的…

el-table 划入划出方法

<template><div><el-table :data"tableData" style"width: 100%" cell-mouse-enter"handleMouseEnter" cell-mouse-leave"handleMouseLeave"><el-table-column prop"ddd" label"日期2" widt…

Unity Physics入门

概述 在unity中物理属性是非常重要的&#xff0c;它可以模拟真实物理的效果在unity中&#xff0c;其中的组件是非常多的&#xff0c;让我们来学习一下这部分的内容吧。 Unity组件入门篇总目录----------点击导航 Character Controller(角色控制) 说明&#xff1a;组件是Unity提…

数据结构------二叉树经典习题2

博主主页: 码农派大星. 关注博主带你了解更多数据结构知识 1.非递归的前序遍历 1.用栈来实现 2,前序遍历是根左右, 先是根节点入栈,,然后不为空时向左遍历,当为空时就返回向右遍历,右为空时直接出栈,依次循环即可. public void preOrderNot(TreeNode root){Stack<TreeNo…

点云处理中阶 Octree模块

一、什么是Octree 八叉树&#xff08;Octree&#xff09;是一种用于描述三维空间的树状数据结构。八叉树的每个节点表示一个正方体的体积元素&#xff0c;每个节点有八个子节点&#xff0c;这八个子节点所表示的体积元素加在一起就等于父节点的体积。一般中心点作为节点的分叉中…

Java进阶学习笔记6——继承的介绍

继承的学习目标&#xff1a; 认识继承&#xff1b; 继承的好处、应用场景 什么是继承&#xff1f; Java中提供了一个关键字extends&#xff0c;用这个关键字&#xff0c;可以让一个类和另外一个类建立父子关系。 继承的特点: 子类能继承父类的非私有成员&#xff08;成员变…