px与em之间的换算
1. em和px如何进行换算
为了简化font-size的换算,需要在css中的body选择器中先全局声明 font-size=62.5%,很多初学者可能会在此定义0.625em或者直接定义12px,这是没有效果的,一定要定义font-size=62.5%!
这就使em值变为 16px * 62.5%=10px, 这样12px=1.2em, 10px=1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。
由于em具有会继续父级出血元素的字体大小的特点,这使得1em=10px,所以12px=1.2em。px与em的转换通过10就可以得来,很方便了吧!
2. CSS中应用em需要注意两点
- body选择器中声明Font-size=62.5%。
- 将你的原来的px数值除以10,然后换上em作为单位。
- 重新计算那些被放大的字体的em数值。避免字体大小的重复声明。
注意 :
- 如果没有在根元素(html字体)指定参照值,那浏览器默认1 rem就是16px,若指定值,则1rem就是指定值 ,也就是所有未经调整的浏览器都符合:1em = 1rem = 16px。
- html设置为62.5%或者10px时会失效,是因为 小于12px或者75%的字体大小 不支持换算。这可能与有些浏览器不支持12px以下的大小有关。所以,使用rem单位,html的字体默认字体大小必须设置为12px或以上。若小于12px则浏览器换算时自动默认字体为12px。
- 选择使用什么字体单位主要由你的项目来决定,如果你的用户群都使用最新版的浏览器,那推荐使用rem,如果要考虑兼容性,那就使用px,或者两者同时使用。