px+em+pt+rpx+rem的区别 2017年07月22日 10:25:36 阿擎 阅读数 1892更多 分类专栏: HTML 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/weixin_39520238/article/details/75701129 px+em+pt+rpx+rem的区别 1.px:(Pixel)单位名称像素,相对长度单位,是相对显示器屏幕分辨率而言的。国内使用的多。 2.em:单位名称为相对长度单位,相对于当前对象内文本的字体尺寸。如果当前对行内文本的字体尺寸未被人设置,则相对于浏览器的默认字体尺寸。国外使用的多。 3.pt:单位名称为点(point),绝对长度单位一般老版本的table使用,现在已经不用了。 4.rpx:在移动端用较多。 5.rem:是CSS3中新增加的一个... 一道相关题 一道相关题 line-height: 15px; line-height: 150%; line-height: 1.5; line-height: 1. 5em; 解答: 1、两个字上下之间的距离为15个像素; 即line-height:15px; 2、两个字上下之间的距离为150%倍; 即line-height:150%; 3、假如我们初始设font-size:12px; 那么line-height:1.5; 就相当于12*1.5=18px; 4、先了解 1em=16px 全世界默认标准font size尺寸是16px,可以改; 所以:1.5em=24px; 即两个字上下之间的距离为24个像素;line-height:1.5em == line-height:24px; px是像素,设置字体大小时,比较稳定和精确。但是如果改变了浏览器的缩放,页面布局会被打破。因此,这时就提出了使用'em'来定义Web页面的字体。 em是根据基准来缩放字体的大小。em实质是一个相对值,而非具体的数值。这种技术需要一个参考点,一般都是以自己的或父级的'font-size'为基准。 rem:em是相对于其父元素来设置字体大小的,这样就会存在一个问题,进行任何元素设置,都有可能需要知道它父元素的大小。而rem是相对于根元素,这样就意味着我们只需要在根元素确定一个参考值。 px是你屏幕设备物理上能显示出的最小的一个点,这个点不是固定宽度的,不同设备上点的长宽、比例有可能会不同。假设:你现在用的显示器上1px宽=1毫米,但我用的显示器1px宽=两毫米,那么你定义一个div宽度为100px,你显示器上看这个div是10厘米,我显示器上看是20厘米。另外一个px点的长宽不一定是1:1的正方形,有的设备上长宽比是不一样的。 em尺寸:所有现代浏览器下默认字体尺寸是16px,这时1em=16px。然后你人为的把body里面定义font-size:12px;(把浏览器默认16px改小了),此刻1em=12px,如果0.8em实际等于12px*0.8;em的用处是你要整个网页字体统一变大变小你只要改body里面font-size的值就行了。 另外:em会继承父元素的字体大小,比如: body{font-size: 16px;} p{font-size:0.75em;} span{font-size:2em;} 0.75em就是(font设置的全世界默认16px)16px像素点x0.75 我大小为16px; 段落文字大小为12px(16*0.75); 我大小是2em,即24px,这里是相对父级字号*2的,而不是相对body里面的16px Rem,上面你看到了,em相对父级,嵌套一多了算字体到底多大就很操蛋,所以有了Rem(浏览器支持还不是很理想),他只相对html或body的字体尺寸(默认还是16px,除非你自己用font-size定义为其他),没有了继承父级尺寸这个关系。1.PX实际上就是像素,用PX设置字体大小时,比较稳定和精确。但是这种方法存在一个问题,当用户在浏览器中浏览我们制作的Web页面时,如果改变了浏览器的缩放,这时会使用我们的Web页面布局被打破。这样对于那些关心自己网站可用性的用户来说,就是一个大问题了。因此,这时就提出了使用“em”来定义Web页面的字体。 2.EM就是根据基准来缩放字体的大小。EM实质是一个相对值,而非具体的数值。这种技术需要一个参考点,一般都是以
的“font-size”为基准。另外,em是相对于父元素的属性而计算的,如果想计算px和em之间的换算,输入数据就可以px和em相互计算。 3.EM是相对于其父元素来设置字体大小的,这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小。而Rem是相对于根元素,这样就意味着,我们只需要在根元素确定一个参考值。