由于微信自带字体放大功能,因此基于微信的页面都可以通过微信进行字体放大,但是有些情况下这并不是我们想要的,因为很多移动端页面的开发都是使用rem作为单位的,当使用微信进行字体放大是,会导致页面的整体布局乱掉的情况出现,这对用户体验来说是极其不友好的,我们希望能够禁止微信的字体放大功能,下面我通过查找资料找到的一些解决方法,至于移动端页面是如何开发的及rem单位的特点,这里不做赘述,详情请参考我的文章"浅谈移动端页面设计的门道"一文。
1.安卓手机禁止字体放大js代码
* 页面加入这段代码可使Android机器页面不再受到用户字体缩放强制改变大小
* 但是会有一个1秒左右的延迟,期间可以考虑通过loading展示
* 仅供参考
*/
if (typeof(WeixinJSBridge) == "undefined") {
document.addEventListener("WeixinJSBridgeReady", function (e) {
setTimeout(function(){
// 直接修改用户设置的/默认字体
WeixinJSBridge.invoke('setFontSizeCallback',{"fontSize":0}, function(res) {
});
// 重写设置网页字体大小的事件
WeixinJSBridge.on('menu:setfont', function() {
WeixinJSBridge.invoke('setFontSizeCallback', { 'fontSize' : 0 });
});
},0);
});
} else {
setTimeout(function(){
WeixinJSBridge.invoke('setFontSizeCallback',{"fontSize":0}, function(res) {
});
},0);
}
2.iphone手机禁止字体放大,css代码
- <span style="font-size:14px;"><style type="text/css">
- body
- {
- -webkit-text-size-adjust: 100% !important;
- text-size-adjust: 100% !important;
- -moz-text-size-adjust: 100% !important;
- }
- </style></span>