Material Design 中的字体规范详解

Material Design 是 Google 推出的一种用户界面设计语言,目的是为了推广设计的统一性和流畅性。在 Material Design 中,字体规范是重要的一部分,因为字体对用户阅读体验和 UI 设计风格有巨大的影响。本文将详细介绍 Material Design 中的字体规范,并提供相关的示例代码供读者学习和参考。

Typographic Scale

在 Material Design 中,Typographic Scale 是一种常用的字体比例尺,它包括了页面中使用的所有字体和文字大小。它的目的是提供一种标准的方式来确定标题、副标题、段落和其他文本元素的字体大小和样式。Typographic Scale 包含以下几种类型的字体规范:

Headline

Headline 是用来吸引用户注意力的大标题,一般用于页面或部分的开头。在 Material Design 中,Headline 字体规范包含六个不同的级别,分别为 H1, H2, H3, H4, H5 和 H6,其中,H1 的字体最大,H6 的字体最小。下面是相关代码示例:

-- -- --
---------- -----
------------ ----
--------------- -------

-- -- --
---------- -----
------------ ----
--------------- -------

-- -- --
---------- -----
------------ ----

-- -- --
---------- -----
------------ ----

-- -- --
---------- -----
------------ ----
--------------- ------

-- -- --
---------- -----
------------ ----
--------------- -------

Subheading

Subheading 是次要标题或副标题,一般用于区分Headline 标题下的细节信息。在 Material Design 中,Subheading 字体规范包含两个不同的级别,分别为 Subtitle 1 和 Subtitle 2,其中 Subtitle 1 比 Subtitle 2 字体大一些。下面是相关代码示例:

-- -------- - --
---------- -----
------------ ----
--------------- -------
------------ ------

-- -------- - --
---------- -----
------------ ----
--------------- ------
------------ ------

Body

Body 是页面中最常使用的字体规范,包括主要段落和正文文本。在 Material Design 中,Body 字体规范包含两个不同的级别,分别为 Body 1 和 Body 2,其中 Body 1 比 Body 2 字体大一些。下面是相关代码示例:

-- ---- - --
---------- -----
------------ ----
--------------- ------
------------ ------

-- ---- - --
---------- -----
------------ ----
--------------- -------
------------ ------

Caption

Caption 是页面中用于介绍对象或宣传语的文本。在 Material Design 中,Caption 字体规范包含两个不同的级别,分别为 Caption 和 Caption 2,其中 Caption 比 Caption 2 字体大一些。下面是相关代码示例:

-- ------- --
---------- -----
------------ ----
--------------- ------
------------ ------

-- ------- - --
---------- -----
------------ ----
--------------- ------
------------ ------

字体家族

Material Design 中,Roboto 字体系列是默认字体系列,是一种具有可读性的中等宽度字体。Robusto 字体系列基于无衬线字体,具有创新的设计和现代的表现形式。下面是在 CSS 中设置 Roboto 字体的代码示例:

-- ---------- --
-------- -
  ------------ --------- -----------
-

-- ------- --
---- -
  ------------ --------- -----------
-

除了 Roboto 字体之外,Material Design 中还包括了几种不同的字体家族,例如:

  • Material Icons:用于图标标记,具有清晰的一个图形图像,方便将其转成 Icon 库;
  • Noto Sans:用于多语言文本和多重形态文本,能够以高质量和连续性来显示很多文字。
  • Productivity Font:一种用于增加阅读体验和提高文档可读性的字体系列。

字间距和行间距

字间距和行间距对于阅读体验和页面设计都有重要的作用。在 Material Design 中,字间距和行间距定义如下:

字间距

字间距定义了单个字母之间的空隙大小。在 Material Design 中,各个级别的字体规范都包含了不同的字间距,如下所示:

-- -------- --
--------------- ------- -- --
--------------- ------- -- --
--------------- ------ -- --

-- ---------- --
--------------- ------- -- -------- -
--------------- ------ -- -------- -

-- ---- --
--------------- ------ -- ---- -
--------------- ------- -- ---- -

-- ------- --
--------------- ------ -- -------
--------------- ------ -- ------- -

行间距

行间距定义了每行文字之间的空隙大小。在 Material Design 中,各个级别的字体规范都包含了不同的行距,如下所示:

-- -------- --
------------ ------

-- ---------- --
------------ ------

-- ---- --
------------ ------

-- ------- --
------------ ------

总结

字体规范是制作 Material Design 网站时必须要遵循的一点。在设计中保持字体规范的规范性和一致性可以提高整体页面的美感,并加强用户体验。在此,通过介绍 Material Design 中的字体规范及相应代码,希望读者可以更好地了解并应用 Material Design 中的字体规范,从渐进式提升用户体验中获得更多的品牌影响力。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/648be03548841e9894a2bf69


猜你喜欢

  • ES11 实现类似 Map 和 Set 的数据结构 WeakRefs

    在 ES11 中,新增了一个功能强大并且十分有用的数据结构,它叫做 WeakRefs,它类似于 Map 和 Set,但同时它又是一种弱引用,不会对被引用的对象形成强引用而导致内存泄漏,这对于前端开发者...

    1 年前
  • 抛开框架讲 RxJS 中 flatMapLatest 操作符用法

    什么是 RxJS RxJS 是一种基于观察者模式和迭代器模式的响应式编程库,它提供了一种用于处理异步和事件驱动程序的抽象方法。RxJS 可以帮助我们在前端开发过程中更加轻松地处理异步数据流。

    1 年前
  • 使用 Mocha 进行 AngularJS 单元测试

    在前端开发中,单元测试是非常重要的一环,以保证代码质量和稳定性。在 AngularJS 框架中,我们可以使用 Mocha 来进行单元测试。本文将详细介绍如何使用 Mocha 进行 AngularJS ...

    1 年前
  • Next.js 中如何使用环境变量?

    Next.js 是一个基于 React 的 SSR 框架,同时具有静态站点生成 (SSG) 的功能。 在实际开发中,我们经常需要根据不同的环境配置不同的参数,如 API 地址、域名、密钥等,而不希望这...

    1 年前
  • 解决 React Redux 中 Async Action 导致状态更新不及时的问题

    在 React Redux 中,异步 Action 是一个非常常见的场景。当我们需要发送异步请求从后端获取数据时,我们通常使用 Redux Thunk 或者 Redux Saga 等中间件来处理异步逻...

    1 年前
  • 基于 Shadow DOM 和 Custom Elements 实现全套自定义 Web 组件

    Web 组件是一种可重复使用的 Web 元素,可以通过浏览器中的自定义元素支持来创建。在过去,创建自定义元素并将其封装到组件中需要使用一些复杂的技术方案,但是现在有 Shadow DOM 和 Cust...

    1 年前
  • 使用 Node.js 调试工具解决 Async 函数异常问题

    前言 在前端开发中,Async 函数一般用于处理异步操作,它简化了回调嵌套的问题,让代码更简洁易懂。但是,当 Async 函数在执行过程中出现异常时,我们常常很难追踪异常的来源。

    1 年前
  • 学会使用 Socket.io 传输文件

    在前端开发中,经常需要传输文件,如图片、音频、视频等。一般情况下,我们使用 AJAX 或 WebSocket 进行文件传输。但是,这些方法有时会面临一些问题,如传输速度慢、断点续传难等。

    1 年前
  • 如何解决响应式设计下的图片模糊问题

    在响应式设计中,页面需要适应不同终端的屏幕大小和分辨率,因此需要针对不同的设备提供不同尺寸和分辨率的图片。然而,当我们放置高清图片时,经常会出现图片模糊的情况,这可能会对用户体验造成负面影响。

    1 年前
  • ES10 新增方法 Array.Flat 以及其实现的案例

    在 JavaScript 的世界里,数组的使用非常普遍。ES6 引入了许多现代的、更好用的方法来操纵数组,比如 map、filter、reduce 等等。最新的 ES10 中又新增了一个非常实用的方法...

    1 年前
  • Vue + Koa2 构建商场系统 —— 如何实现发送邮件

    在一个商场系统中,发送邮件是至关重要的功能。它可以帮助我们通知用户有关订单的信息,确认付款和发货等等。在本文中,我们将使用 Vue 和 Koa2 构建一个商城网站,并探讨如何实现发送邮件这个功能。

    1 年前
  • Sequelize:如何实现自增 ID?

    在关系型数据库中,自增 ID 是一个常见的需求,它可以作为表中每条数据的唯一标识符,方便数据的查询和管理。在 Sequelize,一种流行的 Node.js ORM 框架中,实现自增 ID 非常容易。

    1 年前
  • TypeScript 中如何引入外部 JavaScript 库

    TypeScript 是一个强类型的 JavaScript 超集,它允许我们在编写 JavaScript 代码时加入类型检查,提高开发效率和代码可维护性。但在实际开发中,我们经常需要使用一些外部 Ja...

    1 年前
  • AngularJS SPA 页面 SEO 优化实践

    AngularJS 是目前比较热门的前端框架之一,因其能快速构建 SPA(单页应用程序)而备受关注。然而,由于 SPA 页面的特殊性,搜索引擎优化(SEO)一直是个难题。

    1 年前
  • SASS 中的条件语句及其常见用途

    前言 SASS 是一种流行的 CSS 预处理器,它为我们提供了许多强大的功能,其中之一就是条件语句。条件语句可以让我们在编写样式时做出决策,根据条件的不同生成不同的样式。

    1 年前
  • 如何使用 ES9 用 for-await-of 优化异步操作

    如何使用 ES9 用 for-await-of 优化异步操作 在现代的前端开发中,异步操作扮演着非常重要的角色。许多网络请求、事件处理和其他与用户交互相关的操作都需要异步操作来实现。

    1 年前
  • Web 中实现 Server-Sent Events 的同步与异步的详解

    在 Web 应用程序中,与服务端进行实时通信是一项重要的功能。在传统的 Web 架构中,要实现实时通信需要使用 WebSocket,但是 WebSocket 要求服务端和客户端都具有较高的实时性和强大...

    1 年前
  • Express.js 中 cookie 和 session 的使用详解

    前言 在客户端与服务器进行交互时,常常需要对用户状态和身份进行识别和维护。而 cookie 和 session 便是常用的两种解决方案。在 Express.js 中,cookie 和 session ...

    1 年前
  • React 中 Material Design 的控件使用

    在现代的 Web 开发中,Material Design 可谓是非常流行的一种设计风格,它以简单、干净、直白的设计理念,让许多开发者为之倾倒。同时,React 作为现代前端应用的重要工具,也逐渐在 M...

    1 年前
  • Kubernetes 高可用集群搭建教程

    Kubernetes 是一款开源的容器编排系统,它可以自动化地部署、扩展和管理容器化应用程序。Kubernetes 具有高可靠性、可扩展性和灵活性等特点,成为了目前最流行的容器编排平台之一。

    1 年前

相关推荐

    暂无文章