WKWebView 和动态类型 + 自定义字体
WKWebView and Dynamic Type + Custom Fonts
我无法让 WKWebView
同时使用自定义字体和动态类型,但它是分开工作的。
我对这部分的 CSS 非常简单:
body {
font-family: 'MyCustomFont';
font-size: 15px;
}
为了允许动态类型,我将其更改为:
body {
font-family: 'MyCustomFont';
font: -apple-system-body;
}
我有一个观察者监听通知 UIContentSizeCategory.didChangeNotification
以重新加载 webview,它会优雅地更改字体大小,但使用系统字体,而不是自定义字体。
知道如何同时使用这两种东西吗?
font
shorthand property 覆盖了您的 font-family
属性,只将系统字体应用于您的选择器。
您不能为同一个选择器同时使用两种字体,但您可以尝试使用系统字体作为备用字体,如下所示:
font-family: 'MyCustomFont', -apple-system-body;
虽然我不确定这是否是您要找的答案...
我终于设法解决了,只需将此块添加到 CSS
html {
font: -apple-system-body;
}
然后像这样离开 body
,没有 font-size
:
body {
font-family: 'MyCustomFont';
}
有了这个,两样东西都会起作用。
我无法让 WKWebView
同时使用自定义字体和动态类型,但它是分开工作的。
我对这部分的 CSS 非常简单:
body {
font-family: 'MyCustomFont';
font-size: 15px;
}
为了允许动态类型,我将其更改为:
body {
font-family: 'MyCustomFont';
font: -apple-system-body;
}
我有一个观察者监听通知 UIContentSizeCategory.didChangeNotification
以重新加载 webview,它会优雅地更改字体大小,但使用系统字体,而不是自定义字体。
知道如何同时使用这两种东西吗?
font
shorthand property 覆盖了您的 font-family
属性,只将系统字体应用于您的选择器。
您不能为同一个选择器同时使用两种字体,但您可以尝试使用系统字体作为备用字体,如下所示:
font-family: 'MyCustomFont', -apple-system-body;
虽然我不确定这是否是您要找的答案...
我终于设法解决了,只需将此块添加到 CSS
html {
font: -apple-system-body;
}
然后像这样离开 body
,没有 font-size
:
body {
font-family: 'MyCustomFont';
}
有了这个,两样东西都会起作用。