html - 如何在电脑和手机上显示相同的字体粗细?
问题描述
我正在尝试通过以下方式Proxima Nova
在我的网站上显示 Google 字体:
@import url('https://fonts.googleapis.com/css?family=Proxima+Nova:400,600,700&subset=latin,latin-ext');
当我将 font-weight 设置为 700 时,它在 pc 和 Android chrome 上都能很好地显示。
问题是,当我将字体粗细更改为 600(半粗体)时,在 PC 上看起来应该如何,但在移动设备上显示为 700(粗体)。我读到当字体粗细不存在时,浏览器会自动选择最近的。是加载问题吗?Android没有加载字体粗细600吗?
编辑:
我现在注意到 Android 的大写S的两个边缘完全水平,而在 pc 上,在所有重量上,它们都是 45 度。
现在我认为这不再是加载问题了。
也许谷歌字体上的字体在设备之间是不同的。
我应该做些什么?
解决方案
这似乎是Chrome for Android 对本地字体的字体处理的一个错误。
字体导入会生成如下内容:
src: local('Proxima Nova Bold'), local('ProximaNova-Bold'), url(https://fonts.gstatic.com/l/font?kit=FwZD7-Am2FI_-VOxaLDvvq2zGUau84_G&skey=470ea9b7edd795d7&v=v11) format('woff2');
它没有回退到 url 源,而是使用默认的 Android 字体作为回退(Roboto)
不幸的是,解决方案只是下载字体并自己托管并从该位置引用字体。在此处查看另一个问题的答案
推荐阅读
- r - R Markdown 如何自动将打印效果格式化为数据帧?或者我怎样才能使用特殊的打印方法?
- python - 在一个盒子里裁剪分割的水果以获得他的直径(以像素为单位)
- c# - 在具有特定属性的 ObservableCollection 中搜索多个对象
- node.js - 订购 app.use() 函数的最安全和最有效的方法是什么?
- json - 使用来自 mediainfo AWS Lambda 的请求发送 json 时出现属性错误
- php - 在 Laravel 中对游标语句的原始查询
- dart - Dart 通过带有类名的字符串创建类实例
- ios - iOS UI 测试以调整 SwiftUI 应用程序上的选择器值
- arrays - 使用指针和数组索引将一个数组复制到另一个数组
- python-3.x - 如何安全地从 float64 圆形和钳位到 int64?