本文介绍了旋转/方向更改后wkwebview中的字体大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个wkwebview,我想用从API获取的内容(印记、许可证、免责声明等)填充它。

我的问题是,旋转iPhone后,字体大小会发生变化。但我希望它保持不变。我是这样创建的:

func embed(content: String) -> String {
         return "<!DOCTYPE html><html><head><meta charset="utf-8" name="viewport", width="device-width", initial-scale=1.0, maximum-scale=1.0></head><body>(content)</body></html>"
}

我想通过css防止字体大小更改(css为字符串):

private static let fontSizeSetting = "html{-webkit-text-size-adjust: 100%;}"

这是我运行css的方式:

func insert(cssString: String, into webView: WKWebView) {
        let jsString = "var style = document.createElement('style'); style.innerHTML = '(cssString)'; document.head.appendChild(style);"
        webView.evaluateJavaScript(jsString, completionHandler: nil)
}

public func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
        self.insert(cssString: css, into: self.webView)
    }

有什么办法防止字体大小更改吗?

此帖子对我没有帮助:UIWebView resizes text after rotating: looking for explanation for magical bug or my stupidity

推荐答案

我发现此css用于修复WKWebView在旋转时更改字体的问题。

body {-webkit-text-size-adjust: none;}

这篇关于旋转/方向更改后wkwebview中的字体大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-02 10:20