css3开发:px em rem详解

CSS中px和pt的差异及编程实践 通常情况下,像素是最常用的单位,因为它能够提供更精确的控制和一致的显示效果。但是,对于打印样式表或特定的打印需求,使用点(pt)作为单位可能更合适。综上所述,px和pt在CSS中的区别主要在于其基于的分辨率不同。px是相对于设备屏幕分辨率的单位,而pt是相对于打印机分辨率的单位。在CSS中,px和pt是用于指定元素尺寸的单位。本文将详细介绍px和pt的区别,并提供编程实践的示例代码。需要注意的是,pt单位在Web开发中使用相对较少,因为Web页面通常是在屏幕上显示而不是打印。 阅读详情

概念介绍:

1、px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(Dots Per Inch,每英寸像素数),在扫描打印时一般都有DPI可选。Windows系统默认是96dpi,Apple系统默认是72dpi。

2、em(相对长度单位,相对于当前对象内文本的字体尺寸):是一个相对长度单位,最初是指字母M的宽度,故名em。现指的是字符宽度的倍数,用法类似百分比,如:0.8em, 1.2em,2em等。通常1em=16px。

3、pt (point,磅):是一个物理长度单位,指的是72分之一英寸。pt=1/72(英寸), px=1/dpi(英寸)

4、rem(root em,根em):是CSS3新增的一个相对单位,这个单位引起了广泛关注。这个单位与em有什么区别呢?区别在于使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素。这个单位可谓集相对大小和绝对大小的优点于一身,通过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。目前,除了IE8及更早版本外,所有浏览器均已支持rem。对于不支持它的浏览器,应对方法也很简单,就是多写一个绝对单位的声明。这些浏览器会忽略用rem设定的字体大小。

1、em与px的问题

px是何物?

px像素(Pixel)。相对长度单位。像素px是相对于显示器屏幕分辨率而言的。(引自CSS2.0手册) 

em是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。(引自CSS2.0手册)

PX特点

1. IE无法调整那些使用px作为单位的字体大小;

2. 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位;

3. Firefox能够调整px和em,rem,但是96%以上的中国网民使用IE浏览器(或内核)。

 

em是何物?
em 指字体高,任意浏览器的默认字体高都是16px。所以未经调整的浏览器都符合: 1em=16px。那么12px=0.75em, 10px=0.625em。为了简化font -size的换算,需要在css中的body选择器中声明Font-size=62.5%,这就使em值变为16px*62.5%=10px, 这样12px=1.2em, 10px=1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。

em特点:
1em指的是一个字体的大小,它会继承父级元素的字体大小,因此并不是一个固定的值。任何浏览器的默认字体大小都是16px。因此,12px = 0.75em。实际应用中为了方便换算,通常会如下设置样式:
CSS代码
html { font-size: 62.5%; }

这样,1em = 10px。我们常用的1.2em理论上就是12px。但是,这个换算在IE浏览器下不成立,1.2em会比12px稍大一些,解决办法是把html标签样式中的62.5%改成63%,即:
CSS代码
html { font-size: 63%; }  

在 中文的文章中,一般会在段首空两格。如果用px作为单位,对12px字体来说需要空出24px,对14px字体来说需要空出28px……这样换算非常不通 用。如果用上em单位,这个问题就很好解决了,1个字的大小就是1em,那两个字的大小就是2em。因此,只需这样定义就行了:
CSS代码
p { text-indent: 2em; }

em和px两种字体单位的区别
字体单位应该用em而不用px,原因简单来说就是支持IE6下的字体缩放,在页面中按ctrl+滚轮,字体以px为单位的网站没有反应。px是绝对单位,不支持IE的缩放,em是相对单位。
我在调整本blog的时候,发现不仅仅是字体,将行距(line-height),和纵向高度的单位都用em。保证缩放时候的整体性。

em有如下特点:
1. em的值并不是固定的;
2. em会继承父级元素的字体大小。

em重写步骤:
1. body选择器中声明Font-size=62.5%;
2. 将你的原来的px数值除以10,然后换上em作为单位;
简 单吧,如果只需要以上两步就能解决问题的话,可能就没人用px了。经过以上两步,你会发现你的网站字体大得出乎想象。因为em的值不固定,又会继承父级 元素的大小,你可能会在content这个div里把字体大小设为1.2em, 也就是12px。然后你又把选择器p的字体大小也设为1.2em,但如果p属于content的子级的话,p的字体大小就不是12px,而是1.2em= 1.2 * 12px=14.4px。这是因为content的字体大小被设为1.2em,这个em值继承其父级元素body的大小,也就是16px * 62.5% * 1.2=12px, 而p作为其子级,em则继承content的字体高,也就是12px。所以p的1.2em就不再是12px,而是14.4px。
3. 重新计算那些被放大的字体的em数值。避免字体大小的重复声明,也就是避免以上提到的1.2 * 1.2= 1.44的现象。比如说你在#content中声明了字体大小为1.2em,那么在声明p的字体大小时就只能是1em,而不是1.2em, 因为此em非彼em,它因继承#content的字体高而变为了1em=12px。
IE中的12px汉字:
完成 em转换时还发现了一个诡异的现象,就是由以上方法得到的12px(1.2em)大小的汉字在IE中并不等于直接用12px定义的字体大小,而 是稍大一点。你只需在body选择器中把62.5%换成63%就能正常显示了。原因可能是IE处理汉字时,对于浮点的取值精确度有 限。本现象只发生在12px的汉字,英文不存在此现象。解决方法就是把style.css中的62.5%换 为63%。

一个px、em、pt单位转换工具:

地址:http://pxtoem.com/

2、rem特点 

        rem是CSS3新增的一个相对单位(root em,根em),这个单位引起了广泛关注。这个单位与em有什么区别呢?区别在于使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素。这个单位可谓集相对大小和绝对大小的优点于一身,通过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。目前,除了IE8及更早版本外,所有浏览器均已支持rem。对于不支持它的浏览器,应对方法也很简单,就是多写一个绝对单位的声明。这些浏览器会忽略用rem设定的字体大小。 

举例:

p {font-size:14px; font-size:.875rem;}

注意: 

        选择使用什么字体单位主要由你的项目来决定,如果你的用户群都使用最新版的浏览器,那推荐使用rem,如果要考虑兼容性,那就使用px,或者两者同时使用。

3、字体换算表 

字号

pt

px

em

初号

42pt

56px

3.5em

小初

36pt

48px

3em

 

34pt

45px

2.75em

 

32pt

42px

2.55em

 

30pt

40px

2.45em

 

29pt

38px

2.35em

 

28pt

37px

2.3em

 

27pt

36px

2.25em

一号

26pt

35px

2.2em

 

25pt

34px

2.125em

小一

24pt

32px

2em

二号

22pt

29px

1.8em

 

20pt

26px

1.6em

小二

18pt

24px

1.5em

 

17pt

23px

1.45em

三号

16pt

22px

1.4em

小三

15pt

21px

1.3em

 

14.5pt

20px

1.25em

四号

14pt

19px

1.2em

 

13.5pt

18px

1.125em

 

13pt

17px

1.05em

小四

12pt

16px

1em

 

11pt

15px

0.95em

五号

10.5pt

14px

0.875em

 

10pt

13px

0.8em

小五

9pt

12px

0.75em

 

8pt

11px

0.7em

六号

7.5pt

10px

0.625em

 

7pt

9px

0.55em

小六

6.5pt

8px

0.5em

七号

5.5pt

7px

0.4375em

八号

5pt

6px

0.375em


    

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

参考博客1:http://blog.sina.com.cn/s/blog_64af5bfe0100ihpb.html

参考博客2:http://www.cnblogs.com/leejersey/p/3662612.html

参考博客3:http://www.cnblogs.com/zhangpengshou/archive/2012/08/04/2623061.html

 

css中的px、em、rem 详解

深入浅出横向联邦学习、纵向联邦学习、联邦迁移学习 深入浅出解析横向联邦学习(Horizontal Federated Learning)、纵向联邦学习(Vertical Federated Learning)和联邦迁移学习(Federated Transfer Learning)有多个机构(比如几家不同的银行,或者几家医院)都拥有一些数据,他们希望联合起来训练一个更强大的机器学习模型,但出于隐私保护或法规要求,他们不能直接把数据共享出来。联邦学习就是为了解决这个问题而提出的。它的核心思想是“数据不动模型动”,即数据保留在本地,参与方共同训练模型。 阅读详情

相关推荐

用Python可视化硅晶体生长:3D图解<100>/<110>/<111>晶向差异

本文通过Python 3D可视化技术,详细解析了硅晶体生长中<100>、<110>、<111>三种关键晶向的差异及其在半导体工业中的应用。从密勒指数转换到原子密度计算,结合交互式3D模型展示不同晶向的原子排列特性,帮助读者深入理解晶向对芯片性能的影响。

weixin_42567752的博客 564

CSS 小结笔记之em

1、为什么使用em em也是css中的一种单位,和px类似。很多人会疑惑为什么有了px之后还要使用em,而且em使用起来相对于px来讲比较麻烦。 em主要是应用于弹性布局,下面给出一个小栗子说明em的强大之处 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF...

weixin_30545285的博客 481

[cryoEM] cryoSPARC简介

cryoSPARC系统结构概述 cryoSPARC是一个后端和前端高性能计算软件系统,为单颗粒冷冻电镜提供数据处理和图像分析能力,以及丰富的基于浏览器的用户截面和命令行工具。 Master-worker模式 系统基于主用户模式。 主进程(web应用,核心应用程序和MongoDB数据库)一起在主节点上运行。主节点需要相对轻量级的资源(2+ CPU< 16GB+ RAM)。 工作程序进程可以在具有GPU的任何可用节点上生成,负责所有实际计算和数据处理,并由主节点调度。注意:同一节点可以同时充当主节点和辅

进阶中的程序员吃吃的博客 7795

em和rem的区别

1. em 是一个相对单位。相对于当前对象内文本的font-size,如果当前文本的字体尺寸没有设置,则相对于浏览器的默认字体尺寸。即1em=16px 特点: em的值并不是固定的 em会继承父元素的字体大小 2. rem 是一个相对单位。是相对HTML根元素。 特点: rem为元素设定字体大小的时候,是相对于根元素进行计算的。 当我们改变根元素下的字体大小时,下面的大小都会改变。 ...

SiReSo的博客 2万+

OTG原理讲解

摘要:USB OTG(On-The-Go)是USB 2.0的重要功能,允许设备在主机和从机间动态切换,实现设备间的直接通信。其核心机制是通过ID引脚电平判断角色:Micro-USB中接地为Host,悬空为Device;USB-C则通过CC引脚协商。电路设计需处理ID引脚连接和VBUS电源控制,MCU根据ID状态配置USB控制器模式。典型应用包括手机连接U盘、键盘等外设,极大扩展了移动设备的连接能力。

m0_49476241的博客 3217

YOLOv11-seg改进系列 | 引入CVPR2022 MetaFormer,零参数池化Token混合+StarReLU MLP,精度涨不掉速

本文提出了一种改进YOLOv11分割任务的C3k2_PoolingFormer模块,通过引入MetaFormer架构和Pooling Token Mixer,在保持模型轻量化的同时增强全局感受野建模能力。核心创新包括:1)使用零参数的AvgPool3×3差值作为Token Mixer,实现高效邻域信息聚合和局部对比增强;2)采用StarReLU MLP替代传统激活函数,提升非线性表达能力。改进后模型仅增加6.1%参数量,却能显著提升分割精度,特别适用于需要长程依赖建模的实例分割任务。该设计为轻量级视觉模型提

qq_44224801的博客 431

细说 rem 与 em

本文我们将介绍CSS中的rem 和 `em,理解这两个单位之间的区别对于想要创建灵活、响应迅速、易于维护和修改的网页的 web 开发人员来说是至关重要的。

p1967914901的博客 5897

Android14 Qcom 从Framework到Driver带你连接WIFI(一)

前面已经讲完了WIFI打开的流程,那么通过UI这时候是可以选择需要连接的网络进行连接。从这里开始我们看连接的流程。

IAYLBL的博客 695

em和rem的区别,rem适配的原理

rem是CSS3中新增的一个单位,目前移动开发使用也是最广泛的,同样,它也是一个相对单位,不过相对的是HTML根元素,和em不同的是,rem不用时时去关注父级的情况。根据不同屏幕的宽度,以相同的比例动态修改html的font-size适配,并将px替换成rem,它可以很好的根据根元素的字体大小来进行变化,从而达到各种屏幕基本一直的效果体验。rem与em都是相对单位,我们使用它们的目的就是为了适应各种不同的移动端和pc端的屏幕。rem是根据html根节点来计算的,而em是根据父级元素的字体计算的。

WZH15075051915的博客 4435

解决Office 365 SMTP问题:C#邮件发送详解

本文介绍了如何在C#中使用Office 365 SMTP服务发送邮件。重点讲解了正确配置SMTP客户端的关键参数:必须使用587端口并启用TLS加密(EnableSsl=true),同时通过NetworkCredential进行身份验证。虽然SmtpClient已不推荐用于新项目,但本文提供的代码示例仍适用于临时项目或系统维护,并建议未来可考虑使用MailKit等现代邮件库。文章还包含了错误处理机制,确保程序健壮性。

2501_90323865的博客 141

SAP S/4 FICO科目辅助余额表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

SAP S/4 FICO科目辅助余额表开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

我好像病了的博客 328

区别css单位px、em、rem

在对页面进行自适应时,查阅相关资料了解到,通常有两种方式将px转换为em或者rem,下面就上述三者之间的联系进行讲解: em与px转换 一般浏览器默认1em=16px,通过设置font-size大小来代表如:16px*0.625=10px,其则代表1em=10px,直接上代码(注释的样式为浏览器默认 (1em=16px)的长宽): <!DOCTYPE html> <html la...

七侠剑客的博客 6331

华为OD机考真题 新系统 9月23号 【世界杯徽章换购】多语言题解

华为OD机试真题 新系统【世界杯徽章换购】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题 【世界杯徽章换购】多语言题解。

qq_45776114的博客 686

CSS单位px、rem、em、vw、vh的区别

这几天在写个人网站,因为要适配和,因此了解到了一个:“”(),现在我们来讨论一下中的单位,只有掌握好了这些单位,我们才可以熟练使用“不同的单位修改盒子的宽度。

zheshiyangyang的博客 1933

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

深究--CSS中px、rem与em的区别

前言:随着PC端的网页盛行,移动端作为重要的一部分,也是火热的发展,但是鉴于一些单位的使用,我们并不知道该怎样去使用,那么今天我们来看看常用的三种单位PX、rem与em。 目录:一.PX1.概念:2.特点:二.rem 一.PX 1.概念: px像素(Pixel)。相对长度单位。像素px是相对于显示器屏幕分辨率而言的。 PX:px是pixel的缩写,是像素单位也是为影像显示的基本单位,译自英文“pixel”,pix是英语单词picture的常用简写,加上英语单词“元素”element,就得到pixel,

凭时间赢来的东西,时间肯定会为之作证 8万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

CSS中em/px/rem/vh/vw区别详解

传统的项目开发中,我们只会用到px、%、em这几个单位,它可以适用于大部分的项目开发,且拥有比较良好的兼容性 从CSS3开始,浏览器对计量单位的支持又提升到了另外一个境界,新增了rem、vh、vw、vm等一些新的计量单位 利用这些新的单位开发出比较良好的响应式页面,适应多种不同分辨率的终端,包括移动设备等

常来常往,共同成长 1405

px、em、rem的区别

在css中单位长度用的最多的是px、em、rem,这三个的区别是: 一、px是固定的像素,一旦设置了就无法因为适应页面大小而改变。 二、em和rem相对于px更具有灵活性,他们是相对长度单位,意思是长度不是定死了的,更适用于响应式布局。 三、em是相对于其父元素来设置字体大小的,一般都是以<body>的“font-size”为基准。这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小。而Rem是相对于根元素<html>,这样就意味着,我们只需要在根元素确定一个

weixin_45571121的博客 8148

CSS中 px、em、rem区别

在css中单位长度用的最多的是px、em、rem,这三个的区别是: 一、px是固定的像素,一旦设置了就无法因为适应页面大小而改变。 二、em和rem相对于px更具有灵活性,他们是相对长度单位,意思是长度不是定死了的,更适用于响应式布局。 三、em是相对于其父元素来设置字体大小的,一般都是以<body>的“font-size”为基准。这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小。而Rem是相对于根元素<html>,这样就意味着,我们只需要在根元素确定一个

神盾局码农 1583

px em rem使用详解 区别对比,使用px,em还是rem

介绍px em rem 区别 对比 PX px像素(Pixel):相对长度单位,像素px是相对于显示器屏幕分辨率而言的。 IE无法调整那些使用px作为单位的字体大小; 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位; Firefox能够调整px和em,rem,但是96%以上的中国网民使用IE浏览器(或内核)。 EM em是相对长度单位。相对于当前对象内文本的字体尺寸。相对...

艾小逗 1966

css rem em px

rem em px的区别 1.px:像素(pixel)相对长度单位,像素px是相对于显示器屏幕分辨率而言的 IE无法调整那些使用培训作为单位的字体大小 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位; Firefox能够调整px和em,rem,但是96%以上的中国网民使用IE浏览器(或内核) 2.em:相对长度单位:相对当前对象内文本的字体尺寸,任意浏览器的默认字体高都是16px,所以未经调整的浏览器都符合: 1em=16px。 em值并不是固定的 ,会继承父级元素字体的大小 &

sjyssn的博客 3016

CSS:如何使用px、em、rem?

目录 1. 三种单位详解 1.1 px(像素Pixel) 1.2 em 1.2.1 浏览器默认16px 1.2.2font-size继承特性 1.2.3margin和padding 3. rem(root rem) 2. 应用场景 2.1 通用准则 2.2 em与rem 1. 三种单位详解 1.1 px(像素Pixel) 相对长度单位。像素px是相对于显示器屏幕...

waiting677的博客 1376

px em rem区别

在CSS中的单位长度用的最多的就是px em rem,对于三者的区别以前没有细纠过,导致很多代码书写不规范,先给结论: px(pixel)是固定的像素点,是相对于显示器屏幕分辨率而言。 em和rem比px更灵活,更适合响应式布局。 em是相对于当前对象内文本的字体尺寸;rem是相对于html根元素。 px IE无法调整那些使用px作为单位的字体大小,px实际上就是计算机上的一个像素点,比较稳定和精确。但是缺点是无法根据设备的尺寸变化改变大小,从未无法自适应布局。 em 为了解决px的问题,提出了em。它

今天的我还菜嘛 1156

详解CSS中单位PX和EM,REM的区别PX特点EM特点 REM特点

国内的设计师大都喜欢用px,而国外的网站大都喜欢用em和rem,那么三者有什么区别,又各自有什么优劣呢?

CRMEB小程序商城的博客 1255

css中的px、em、rem 详解

注:本文章转自http://www.mamicode.com/info-detail-655497.html,侵权删 概念介绍: 1、px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(Dots Per Inch,每英寸像素数),在扫描打印时一般都有DPI可选。Windows系统默认是96dpi,App

leejj_520的博客 998

HTML2em一定是32px,css中的px、em、rem 详解

概念介绍:一、px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,若是px要换算成物理长度,须要指定精度DPI(Dots Per Inch,每英寸像素数),在扫描打印时通常都有DPI可选。Windows系统默认是96dpi,Apple系统默认是72dpi。css二、em(相对长度单位,相对于当前对象内文本的字体尺寸):是一个相对长度单位,最初是指字母M的宽度,故名em...

weixin_30682043的博客 748

rem、em、px的区别

rem、em、px的区别 1.px像素(pixel)。绝对单位。像素px是相对于显示器屏幕分辨率而言的,是一个虚拟长度单位,是计算机系统的数字化图像长度单位 2.em是相对长度单位,相对于当前对象内文本的字体尺寸。如果当前行内文本的字体尺寸未被人为设置。则相对于浏览器的默认字体尺寸,它会继承父级元素的字体大小,因此并不是一个固定的值 3.rem是css3新增的一个相对单位(root em,根em'),使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素 4.区别: IE无法调

m0_66783294的博客 2474
上一篇: js开发:原生js实现图片延迟加载
下一篇: css3开发:rem与px的换算
Generon
博客等级 码龄11年 135粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值