背景
在很多移动端浏览器中,都可以调整字体大小,有时会导致文字溢出,排版错乱,可以采用以下方案禁止浏览器文字放大效果
方案
在页面样式文件中增加如下代码:
html body{
-webkit-text-size-adjust: none !important;
-moz-text-size-adjust: none !important;
-ms-text-size-adjust: none !important;
text-size-adjust: none !important;
}
处理安卓系统下微信浏览器中的问题:
if (typeof WeixinJSBridge === 'object' && typeof WeixinJSBridge.invoke === 'function') {
handleFontSize();
} else {
if (document.addEventListener) {
document.addEventListener("WeixinJSBridgeReady", handleFontSize, false);
} else if (document.attachEvent) {
document.attachEvent("WeixinJSBridgeReady", handleFontSize);
document.attachEvent("onWeixinJSBridgeReady", handleFontSize);
}
}
function handleFontSize() {
// 设置网页字体为默认大小
WeixinJSBridge.invoke('setFontSizeCallback', { 'fontSize' : 0 });
// 重写设置网页字体大小的事件
WeixinJSBridge.on('menu:setfont', function() {
WeixinJSBridge.invoke('setFontSizeCallback', { 'fontSize' : 0 });
});
}
移动端浏览器测试效果如下:
- 生效:Chrome、搜狗浏览器、微信浏览器、百度浏览器、UC浏览器
- 不生效:夸克浏览器