手机端font-size:62.5%原理

原理: 是根据根节点html的默认字体大小font-size来计算的,以此进行rem的初始值设置。实现对不同屏幕宽度的适配。(100px/16px=6.25=625%, 100代表100px,这里是以100px来换算的,即:1rem=100px。当然有些地方是10px/16px=62.5%,以10px来换算的,即1rem=10px。)

rem是css3中新增加的一个单位属性,是相对长度单位。相对于根元素(即html元素)font-size计算值的倍数

具体解析:

在桌面浏览器上font-size的初始值是16px(即1rem = 16px)

<!-- rem的初始赋值 -->
<html style="">
    <head></head>
    <body>
         <div style="font-size: 1rem">此处的1rem即设备的默认字体大小,桌面浏览器默认字体大小是16px</div>
    </body>
</html>

当然可以在css上进行初始赋值,或者使用js进行动态的初始赋值

/*使用css进行rem的初始赋值*/
html{
      font-size:  100px;    /*此处的初始赋值表示1rem=100px*/
}

rem的 62.5% 和 10px的区别

在桌面浏览器上 font-size 的默认值是16px;

可知 font-size: 62.5%; 即表示10px (通过计算 16 * 62.5% = 10 得到)

那么 font-size: 62.5%; 和 font-size: 10px; 的区别在什么地方呢?

比较好的解释:

桌面浏览器默认页面字体大小是16px,这种情况下设置成具体像素大小或者对应的百分比,看起来的效果是一样的;

但是其他类型的设备的默认字体大小不一定是16px,

特别是高分辨率的设备,16px大小的字体在它们上面看起来会非常小,所以不能在body上设置具体像素值,

设置成百分比,可以按照设备的基准字体大小给编写的网页设置好最适合用户浏览的字体大小。

正确的rem使用方法

使用 font-size: 62.5%; 更好

/*rem的初始赋值*/
html{
      font-size:  62.5%;    /*此处的初始赋值表示1rem=10px*/
}

然而坑无处不在。。。

新的问题: 我们开发常用的chrome浏览器,支持的最小字体大小是12px,

/*rem在不同浏览器下的结果*/
html{
    font-size:62.5%;
} 
header{
    height:8rem;    /*在其他浏览器表示80px,在chrome上表示96px*/
} 

解决办法:

  font-size:625%;

1rem = 100px, 以此为单位进行换算,可以避免以上问题的出现

项目中:

如果你们手机是320px的,那么截图出来尺寸是640px;

dpr:像素比

dpr=物理像素(750px) / 逻辑像素(375px,我们去布局写的尺寸) =2

逻辑像素 = 物理像素 / dpr;

dpr的取值:如果的设计图是640px ,750px 的时候 dpr= 2

如果你的设计图为1080的时候,那么dpr=3;

(1)如果设计图为750px或者640px drp = 2 那么逻辑像素为:375px或者320px

下面布局的尺寸:90px(量出来的尺寸,也就是设计图的尺寸) / dpr(2) = 45px(逻辑像素);

我们rem写多少:45/100= 0.45rem;

### HTML 中 `font-size` 设置为 62.5% 的作用 在 CSS 开发中,将根元素 `<html>` 的字体大小设置为 `62.5%` 是一种常见的技巧,其主要目的是为了简化基于像素的单位转换为相对单位(如 `em` 或 `rem`)。具体来说: - 当浏览器默认字体大小为 `16px` 时,将 `<html>` 的 `font-size` 设定为 `62.5%` 将使根元素的字体大小变为 `10px` (即 `16 * 0.625 = 10`)。这使得后续子元素使用 `em` 或 `rem` 单位定义尺寸时更加直观[^1]。 例如,在这种情况下,如果需要设定某个段落的文字大小为 `14px`,可以直接将其 `font-size` 属性设为 `1.4rem` 而无需复杂的计算。同样地,对于边距 (`margin`) 和填充 (`padding`) 等属性也可以轻松应用类似的逻辑来保持一致性[^2]。 以下是具体的代码示例展示如何利用这一技术实现响应式的布局调整: ```css /* 基础重置 */ html { font-size: 62.5%; /* 默认字体大小变为10px */ } body { font-size: 1.2rem; /* 实际显示为12px */ } p { font-size: 1.4rem; /* 实际显示为14px */ } ``` 此外需要注意的是,尽管这种方法提高了开发效率并增强了可维护性,但它依赖于用户代理提供的初始字体大小作为基准值(通常是16px),因此当用户的设备设置了不同的基础字体大小时可能会导致轻微的变化[^3]。 #### 计算比例的应用场景 假设设计稿是以宽度640px为基础制作,则可以通过如下方式推导出适配其他屏幕尺寸所需的缩放因子。比如某组件的设计中有10px间距需求,在实际编码过程中就可以依据上述提到过的640/10=64这个固定比率来进行动态换算得到相应的REM数值表示形式从而达到跨平台一致性的视觉呈现效果。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值