css字号 h5_H5页面中字体大小动态配置

html 元素是文档的根元素,对html设置了字体大小,其子元素会继承html字体的大小。

不同的浏览器默认有的默认html的字体是16px,有的是14px。

同时浏览器字体的大小还会受到你自己在手机里配置的系统字体大小的影响。

这么多因素,如果只靠css里配置html字体大小,子元素基于html的rem是不能保证在不同的手机端适配的。

所以可以通过js动态来计算html应该配置多大的字体。

function htmlFontSize() {

var h = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);

var w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);

var width = w > h ? h : w;

width = width > 720 ? 720 : width;

var fz = ~~(width * 100000 / 36) / 10000/2;

document.getElementsByTagName("html")[0].style.cssText = 'font-size: ' + fz + "px";

var realfz = ~~(+window.getComputedStyle(document.getElementsByTagName("html")[0]).fontSize.replace('px', '') * 10000) / 10000;

if (fz

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSS实现字号自适应的方式有多种,其比较常见的有以下几种: 1. 使用相对单位:使用相对单位(如em、rem、vw等)来设置字体大小,可以根据浏览器窗口大小自动调整字体大小。例如: ``` body { font-size: 16px; } h1 { font-size: 2em; /* 相当于32px */ } p { font-size: 1.2em; /* 相当于19.2px */ } @media screen and (max-width: 768px) { body { font-size: 14px; } } ``` 上面的代码,使用em单位来设置字体大小,h1元素的字体大小为父元素字体大小的2倍,p元素的字体大小为父元素字体大小的1.2倍。同时,使用@media查询来在不同的屏幕尺寸下设置不同的字体大小。 2. 使用viewport单位:使用viewport单位(如vw、vh)来设置字体大小,可以根据浏览器窗口大小自动调整字体大小,而不是根据父元素大小调整。例如: ``` h1 { font-size: 5vw; /* 相当于视口宽度的5% */ } p { font-size: 3vh; /* 相当于视口高度的3% */ } ``` 上面的代码,使用viewport单位来设置字体大小,h1元素的字体大小为视口宽度的5%,p元素的字体大小为视口高度的3%。 3. 使用JavaScript:使用JavaScript来获取浏览器窗口大小,并根据窗口大小动态设置字体大小。例如: ``` function setFontSize() { var screenWidth = window.innerWidth; var fontSize = screenWidth / 20; /* 根据实际情况调整比例 */ document.body.style.fontSize = fontSize + 'px'; } window.addEventListener('resize', setFontSize); setFontSize(); ``` 上面的代码,使用JavaScript来获取浏览器窗口大小,并根据窗口大小动态设置字体大小。同时,使用resize事件来在窗口大小变化时重新设置字体大小

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值