热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Bootstrap4Roboto字体家族

如何解决《Bootstrap4Roboto字体家族》经验,为你挑选了1个好方法。

我是Bootstrap的新手,我在本地安装了4.1.1版本(node.js,npm,gulp和sass)。

抱歉,这是一个愚蠢的问题,但是我是否必须从Google导入Roboto字体系列,或者Bootstrap已经导入了该字体?我不想添加任何多余的CSS。

谢谢!鲍勃:)



1> 小智..:

过去几年中,网站的字体栈一直在发展,因此这绝对不是一个坏问题。

在检查bootstrap@4.1.1如何导入/实现框架中的Roboto字体时,我的第一种方法是打开bootstrap.css文件,该文件位于以下位置:

node_modules / bootstrap / dist / css / bootstrap.css

然后对“ Roboto”一词进行快速文本搜索,查看文件中是否有任何匹配项。完成此操作后,您将看到第34行产生了第一个匹配项,并显示为:

--font-family-sans-serif:-apple-system,BlinkMacSystemFont,“ Segoe UI”,Roboto,“ Helvetica Neue”,Arial,sans-serif,“ Apple Color Emoji”,“ Segoe UI Emoji”,“ Segoe UI”符号”;

我们可以说Roboto字体有某种类型的实现。让我们仔细检查一下可编译分发就绪资产的原始scss文件,并查看如何在其中实现以获得进一步的了解,可以在这里找到:

node_modules / bootstrap / scss / _variables.scss

然后我们将对“ Roboto”进行另一个快速文本搜索,它会在第234行找到1个结果,并显示为:

$ font-family-sans-serif:-apple-system,BlinkMacSystemFont,“ Segoe UI”,Roboto,“ Helvetica Neue”,Arial,sans-serif,“ Apple Color Emoji”,“ Segoe UI Emoji”,“ Segoe UI Symbol “!默认;

乍一看,我们注意到引导程序没有从Google字体导入Roboto字体。那么,这是怎么回事?Bootstrap通过利用与font short hand属性一起使用的内置速记属性来利用系统字体堆栈在浏览器中使用。可以在本文中找到更深入的解释:新系统字体堆栈?。如本文所述,依靠系统字体是有利有弊,将要呈现的字体是用户计算机上可用的第一种字体。

如果您想提供一种更可靠,更一致的方式来确保Roboto字体呈现在您认为合适的位置,那么我将直接从以下位置的Google字体中导入该字体:Roboto-Google字体(或者您可以为Roboto设置静态资产字体系列,如下所述:Google Roboto字体-Git存储库,如果您要避免引入外部资源)。

在此页面上时,单击“选定的家族”,并注意如何将字体家族声明为:

字体家族:“ Roboto”,无衬线;

请注意,我们将不再使用Roboto通过系统字体堆栈来依赖字体速记属性的内置关键字,而是将使用“ Roboto”来引用从Google字体导入的字体系列。因此,如果您仅在标题中添加以下链接:



现在,您可以声明所有h1标签以使用Roboto字体家族,例如:

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

而不是像这样依赖系统字体栈(并且可能不呈现您的首选字体):

h1 { font-family: Roboto; }

希望这有助于一些愉快的编码!


推荐阅读
  • TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得
    TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得 ... [详细]
  • 如何撰写PHP电商项目的实战经验? ... [详细]
  • Bootstrap 插件使用指南
    本文详细介绍了如何在 Web 前端开发中使用 Bootstrap 插件,包括自动触发插件的方法、插件的引用方式以及具体的实例。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • WebStorm 是一款强大的集成开发环境,支持多种现代 Web 开发技术,包括 Node.js、CoffeeScript、TypeScript、Dart、Jade、Sass、LESS 和 Stylus。它为开发者提供了丰富的功能和工具,帮助高效构建和调试复杂的 Node.js 应用程序。 ... [详细]
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • 为了向用户提供虚拟应用程序,通常会在基础架构中部署StoreFront或Web Interface。为了确保安全的远程访问,通常需要在DMZ中配置Secure Gateway或Access Gateway。本文详细对比了这两种界面工具的功能特性,包括用户管理、安全性、性能优化等方面,为企业选择合适的解决方案提供了全面的参考。 ... [详细]
  • 本文介绍了三种解决 Git Push 冲突的方法,包括创建新分支、手动解决冲突和强行推送。这些方法适用于不同的开发场景,如版本迭代、多人协作和个人开发。 ... [详细]
  • 开发笔记:前端之前端初识
    开发笔记:前端之前端初识 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 秒建一个后台管理系统?用这5个开源免费的Java项目就够了
    秒建一个后台管理系统?用这5个开源免费的Java项目就够了 ... [详细]
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
  • 深入浅出 webpack 系列(二):实现 PostCSS 代码的编译与优化
    在前一篇文章中,我们探讨了如何通过基础配置使 Webpack 完成 ES6 代码的编译。本文将深入讲解如何利用 Webpack 实现 PostCSS 代码的编译与优化,包括配置相关插件和加载器,以提升开发效率和代码质量。我们将详细介绍每个步骤,并提供实用示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 在Mac系统中安装Hexo时,如果遇到“Error: Cannot find module './build/Release/DTraceProviderBindings’”错误,可以通过以下步骤解决:首先确保已正确安装Node.js和npm,然后尝试运行`npm install hexo --no-optional`。若问题依然存在,建议检查环境变量配置,并参考Hexo官方文档进行进一步排查。 ... [详细]
author-avatar
392399224_619416
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有