IOS解决方案:(iOS上需要调整 webview 的字体大小时,是通过给 body 设置 -webkit-text-size-adjust
属性实现的)
body { -webkit-text-size-adjust: 100% !important; }
Android解决方案:(Android上是对所有字体数值进行放大,所以要通过REM来实现)
(function(){ var $dom = document.createElement('div'); $dom.style = 'font-size:10px;'; document.body.appendChild($dom); // 计算出放大后的字体 var scaledFontSize = parseInt(window.getComputedStyle($dom, null).getPropertyValue('font-size')); document.body.removeChild($dom); // 计算原字体和放大后字体的比例 var scaleFactor = 10 / scaledFontSize; // 取html元素的字体大小 // 注意,这个大小也经过缩放了 // 所以下方计算的时候 *scaledFontSize是原来的html字体大小 // 再次 *scaledFontSize才是我们要设置的大小 var originRootFontSize = parseInt(window.getComputedStyle(document.documentElement, null).getPropertyValue('font-size')); document.documentElement.style.fontSize = originRootFontSize * scaleFactor * scaleFactor + 'px'; })(); 链接:https://juejin.im/post/59f678d7f265da43333dabb7