怎么把所有em换成rem
时间: 2023-04-01 15:02:43 浏览: 184
可以使用CSS中的计算属性来将所有的em单位转换成rem单位。具体的做法是,在根元素html的样式中设置一个基准字体大小,然后在其他元素中使用rem单位来表示字体大小,这样就可以实现em到rem的转换。
例如,如果我们将根元素的字体大小设置为16px,那么1em就等于16px,1rem就等于根元素的字体大小16px。如果我们想将一个元素中的字体大小从1em转换成1rem,可以这样写:
font-size: calc(1em / 16);
这样就可以将所有的em单位转换成rem单位了。
相关问题
postcss-pxtorem 我期望用来配置,rpx 转换成rem
如果你希望将部分px单位转换为rem而不是rpx,可以使用postcss-pxtorem插件进行配置。你可以在使用px单位的属性中添加一个大写字母,如Px或PX,这样插件会忽略这些属性,不进行转换。例如,在CSS中,你可以这样配置:
.convert {
font-size: 16px; // 被转换为1rem
}
.ignore {
border: 1Px solid; // 被忽略
border-width: 2PX; // 被忽略
}
通过这种方式,你可以实现将rpx转换为rem的期望配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
移动端适配fontsize一直变,rem也会变但是px转成rem不会变
移动端适配fontsize的变化是为了适应不同屏幕大小的设备。由于移动设备的屏幕尺寸多样化,为了保证页面在不同设备上的显示效果一致,需要根据屏幕尺寸动态调整字体大小。
在移动端适配中,我们一般使用rem(root em)作为单位。rem是相对于根元素(即html元素)的字体大小来计算的单位。当根元素的字体大小发生变化时,通过rem单位设置的字体大小也会相应变化。
与此不同的是,使用px单位设置的字体大小转换成rem后,不会随着根元素的字体大小变化而发生变化。这是因为px单位是固定像素大小,不会随着屏幕尺寸变化而自动调整。因此,px单位转换成rem后的字体大小在不同屏幕上显示效果可能不一致。
为了解决这个问题,在移动端适配中,我们通常会使用媒体查询(media query)来根据不同屏幕尺寸设置不同的根元素字体大小,进而影响到通过rem单位设置的字体大小。
总结起来,移动端适配中,fontsize会一直变化是为了适应不同屏幕大小,rem也会变化是因为它是相对于根元素字体大小计算的单位,而px转换成rem不会变化是因为px单位是固定像素大小,不会随着屏幕尺寸变化而调整。