合肥新格建站网,重庆市工程建设信息网打不开,成都设计院待遇,国家承认的26种证书关于px、pt和em的区别#xff0c;自己有时候也会纠结到底该用什么单位#xff0c;今天特意查了一些文章#xff0c;下面这篇虽然很久远了#xff0c;但解释的比较全面#xff0c;转载收藏之。点击查看原文#xff08;原网址已失效#xff0c;这是其他站点#xff09;
…关于px、pt和em的区别自己有时候也会纠结到底该用什么单位今天特意查了一些文章下面这篇虽然很久远了但解释的比较全面转载收藏之。点击查看原文原网址已失效这是其他站点
这里引用的是Jorux的“95%的中国网站需要重写CSS”的文章题目有点吓人但是确实是现在国内网页制作方面的一些缺陷。我一直也搞不清楚px与em之间的关系和特点看过以后确实收获很大。平时都是用px来定义字体所以无法用浏览器字体放大的功能而国外大多数网站都可以在IE下使用。因为
1. IE无法调整那些使用px作为单位的字体大小
2. 国外的大部分网站能够调整的原因在于其使用了em作为字体单位
3. Firefox能够调整px和em但是96%以上的中国网民使用IE浏览器(或内核)。
px像素Pixel是相对长度单位像素px是相对于显示器屏幕分辨率而言的。(引自CSS2.0手册) em是相对长度单位相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置则相对于浏览器的默认字体尺寸。(引自CSS2.0手册) 字体单位使用em能支持IE6下的字体缩放在页面中按ctrl 滚轮字体以px为单位的网站没有反应。
px是绝对单位不支持IE的缩放。
em是相对单位网页中的文字能放大和缩小。将行距(line-height)和纵向高度的单位都用em。保证缩放时候的整体性。
任意浏览器的默认字体高都是16px。所有未经调整的浏览器都符合: 1em16px。那么12px0.75em,10px0.625em。为了简化font-size的换算需要在css中的body选择器中声明Font-size62.5%这就使em值变为 16px*62.5%10px, 这样12px1.2em, 10px1em, 也就是说只需要将你的原来的px数值除以10然后换上em作为单位就行了。
em有如下特点
1. em的值并不是固定的
2. em会继续父级元素的字体大小。 所以我们在写CSS的时候需要注意
1. body选择器中声明Font-size62.5%Font-size63%用于ie6兼容
2. 将你的原来的px数值除以10然后换上em作为单位
3. 重新计算那些被放大的字体的em数值。避免字体大小的重复声明。
也就是避免1.2 * 1.2 1.44的现象。比如说你在#content中声明了字体大小为1.2em那么在声明p的字体大小时就只能是1em而不是1.2em, 因为此em非彼em它因继续#content的字体高而变为了1em12px。
但是12px汉字例外就是由以上方法得到的12px(1.2em)大小的汉字在IE中并不等于直接用12px定义的字体大小而是稍大一点。这个问题 Jorux已经解决只需在body选择器中把62.5%换成63%就能正常显示了。原因可能是IE处理汉字时对于浮点的取值精确度有限。不知道有没有其他的解释。 单位pt的说明
在印刷排版中,point是一个绝对值,它等于1/72英寸,可以用尺子丈量的,物理的英寸。但是在css中pt含义却并非如此。因为我们的显示器被分割为了一个个的像素单个像素只能有一种颜色 (为了简化这里暂不讨论次像素反锯齿技术)要在屏幕上显示必须先把以 pt 为单位的长度转换为以像素为单位的长度这个转换的媒介就是 DPI (事实上这里的所谓的 DPI是操作系统和浏览器中使用的术语即为 PPI, pixels per inch和扫描仪、打印机、数码相机中的 DPI 是不同的概念)。
例如无论在哪个操作系统中Firefox 浏览器默认的 DPI 都是 96那么实际上 9pt 9 * 1/72 * 96 12px。
所以虽然“DPI”中的“I”和“1pt 等于 1/72 inch”中的“inch”都不代表物理上的英寸但这两个单位互相之间是相等的也就在相乘中约掉了。
那么真实的物理长度怎么计算呢?请拿出一把尺子丈量你的显示器的可见宽度 (我这里是 11.2992 英寸)除以横向分辨率 (我这里是 1024 像素)得到的就是每个像素的物理长度。
现在我们可以回答这样一个问题网页上 9pt 的字体究竟占用了多宽的空间?答案是: 9 * 1/72 * 96 * 11.2992 / 1024 0.1324 英寸 0.3363 厘米。
虽然pt是绝对单位但是那只是针对输出设备而言的在文字排版工具wordabobe中是非常有用的字体单位。不管显示器的分辨率是多少打印在纸面上的结果是一样的。
但是网页主要为了屏幕显示而不是为了打印等其他需要的。而px能够精确地表示元素在屏幕中的位置和大小。
当然。在dpi是96的情况下9pt12px。
附px、em、%和pt换算表 px、em、%和pt的换算