我可以使用 CSS "unicode-range" 来指定整个(第三方)页面的字体吗?

Can I use CSS "unicode-range" to specify a font across an entire (third party) page?

我从来没有变得流利 CSS 但我认为我以前没有遇到过这种情况。

我正在考虑使用 stylish 将 CSS 添加到我无法直接控制的第三方站点。所以 HTML 和 CSS 并不是真正为我想做的那种定制设置的。

我想调整的网站不允许很好地控制字体,但它的一些页面(用户创建的)大量使用了我 OS/browser 的一些奇特的 Unicode 范围(例如高棉语)组合选择一个糟糕的字体:

我可以制定一个 CSS 规则,该规则将应用于页面中属于特定 Unicode 范围内的所有文本,以将其设置为已知良好的字体,而无需深入研究页面结构 HTML/DOM?

(或者 unicode-range 只是为了用 webfonts 做一些不同的事情?

在大多数浏览器中答案是肯定的

MDN - Unicode Range

The unicode-range CSS descriptor sets the specific range of characters to be downloaded from a font defined by @font-face and made available for use on the current page.

示例:

@font-face {
  font-family: 'Ampersand';
  src: local('Times New Roman');
  unicode-range: U+26;
}

支持:CanIUse.com

另见Article

unicode-range(s) 可用于指定要从字体下载的特定字符集(或范围)以尝试节省带宽。看这里:Mozilla unicode-range info

在没有看到实际的 CSS 的情况下,您可以尝试通过声明

等方式强制完全使用不同的字体
body{font-family: arial,sans-serif;}    

或者在其他字体拒绝让路时添加 !important(在任何正常情况下我都会避免),例如

body{font-family: arial,sans-serif !important;}

如果您可以绕过使用原始字体,那么 unicode 范围将不再重要。注意图标字体之类的东西,因为删除它们可能会使某些 symbols/graphics 消失。

希望对您有所帮助。

抱歉,我误解了你的问题 - 以为你想完全摆脱现有的 unicode 字体。