两者都是制作web页面时用到的单位,PX实际上就是像素,用PX设置字体大小时,比较稳定和精确。但如果改变浏览器的缩放,原本的布局就会被打破,这时候就可以使用em定义页面的字体大小,em是相对于父元素的,1em等于一倍的父元素字体大小。
EM是相对于其父元素来设置字体大小的,这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小,也比较麻烦。而Rem是相对于根元素<html>,这样就意味着,我们只需要在根元素确定一个参考值,所以rem用的更广泛。
IE6-IE8,不支持em和rem属性,px是所有浏览器都支持。
因此为了浏览器的兼容性,可“px”和“rem”一起使用,用"px"来实现IE6-8下的效果,然后使用“Rem”来实现代浏览器的效果。