为不同字体族设置不同的字号

7
有没有办法为不同的字体族指定不同的字体大小。我想使用的字体(产品品牌设计用)是一种比较罕见的字体(FlashDLig),并非所有的PC和浏览器都支持。(我的一个装有IE 9的Windows 7 PC无法显示它...)。现在,我使用Arial作为备选字体,问题是Arial比FlashDLig大得多,所以我想在同一个类中为它指定不同的字体大小。这可能吗?
我知道你可能可以使用font-size-adjust,但它只在Firefox中受支持。
有什么建议吗?也许使用Javascript魔术?
谢谢

可以看一下这个网址:https://dev59.com/Z1zUa4cB1Zd3GeqPzxcL - Julio
1
但是为什么不直接使用@font-face在您的网站上包含该字体呢?即使IE 5.5也支持它。 - kapa
嗨,bažmegakapa。谢谢,好主意。这个网站说@font-face文件类型只被IE9及以上版本支持...你说IE5.5及以上版本?http://www.stunningcss3.com/resources/fontface-file-types-browser-support.html - Dexter Schneider
2个回答

2
我会建议默认使用Arial字体,然后创建第二个类,该类使用@font-face声明了您的字体。然后,我认为您需要使用Javascript测试字体是否能够加载(也许检查一些放在屏幕外的元素的派生样式),如果可以加载,则将类更改为新类。之所以这样做,而不是从自定义字体开始,是因为涉及到渐进增强的概念。
以下是在Javascript中更改类的一种方法:
if (fontLoaded()) {
    document.body.className += " fontLoaded";
}

然后在你的CSS中:
@font-face {
    ... /* declare font face */
}
body {
    font-family: "Arial";
    font-size: 0.8em;
}
body.fontLoaded {
    font-family: "FlashDLig";
    font-size: 1em;
}

谢谢。感激不尽。您有关于如何实现您解决方案中的这个部分的任何想法吗:“如果是这样,将类更改为新类。”我假设它必须是一些 JavaScript 函数,而 JavaScript 不是我的强项。 - Dexter Schneider

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接