- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在我的网站上使用Bold
、Medium
和Normal
字体粗细,即700
,分别为 500
和 400
。
我使用 Helvetica Neue
字体,作为未安装它的系统的后备,我想使用 Open Sans
。问题是 Open Sans
没有 Medium
样式。
如果浏览器使用 Open Sans
。有可能吗?
Stack Overflow 上有一个类似的问题:How to set different font-weight for fallback font?但我无法使用已接受答案中描述的技术获得我需要的结果。
我需要类似的东西
@font-face {
font-family: 'semibold';
src: 'Helvetica Neue':500, 'Open Sans':600;
}
虽然不知道该怎么做。
最佳答案
您不能真正在字体声明中定义粗细。相反,那里使用了 font-weight
as a gatekeeper to match the font而不是将样式传递给元素。
这看起来有点矫枉过正,但你可以使用这个 JavaScript function by Sam Clarke作为查看字体是否可用的起点,然后按照最适合您的特定要求的逻辑有条件地修改字体粗细。
对于仅使用这两种字体的简化示例,您可以像这样设置 CSS:
@font-face {
font-family: h-semibold;
src: local('Helvetica Neue');
}
@font-face {
font-family: os-semibold;
src: local('Open Sans');
}
.semibold {
font-family: h-semibold, os-semibold;
}
.w5 {
font-weight: 500;
}
.w6 {
font-weight: 600;
}
然后,使用上面链接的函数,您可以在 JS 中放置类似这样的内容,以根据字体支持有条件地加载权重类:
var semibold = document.querySelectorAll('.semibold');
if (isFontAvailable('h-semibold')) {
semibold.forEach(result => {
result.className += ' ' + 'w5';
});
} else {
semibold.forEach(result => {
result.className += ' ' + 'w6';
});
}
如果你真的需要执行它,你无疑会想出一个更优雅的解决方案。
关于css - 不同字体的不同字体粗细,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48307964/
我有一个格式良好的单元格范围,具有不同的边框线粗细(其中一些是中等厚度,其中一些是薄的,没有特定的图案)。我想运行一个将边框颜色更改为灰色的宏,但每次执行此操作时,它都会自动将所有边框粗细更改为 xl
我可以使用百分比使我的图像/div 具有响应性。 如何使字体大小响应不同的屏幕大小? 最佳答案 我最近偶然发现了这个问题,并为此编写了一个适合我需要的解决方案。也许您会发现您也可以将它合并到您的 CS
在 iOS 8 中,为了获得 Helvetica Neue 的细变体,以下代码可以工作 UIFont.systemFontOfSize(50, weight: UIFontWeightThin) 在
我想将 matplotlib 绘图中使用的默认字体更改为 Windows 下的 Segoe UI。我可以通过像这样改变 rcParams 来做到这一点 import matplotlib matplo
我想知道是否有人知道基于 Bresenham 的线算法或任何类似算法绘制具有特定粗细的线的任何算法。 再想一想,我一直在想,对于每个 setPixel(x,y) 我只是画一个圆圈,例如: filled
我正在尝试自定义我已经拥有的用于选择 Google 字体和更新预览 DIV 的功能之一,但是我还想添加“字体大小”、“字体粗细”、“字母间距”等,但是此功能仅在您单击“主字体选择器”组合框时才有效,我
我正在使用 RaphaelJS 在 IE8 中调试一些性能问题。我们正在 raphael 中从大约 1000 个元素和文本节点构建图形,特别是一个图形在渲染时给我们带来了问题。在 IE9 中,根据机器
我是一名优秀的程序员,十分优秀!