你知道CSS中长度单位pt、px、dpi的意思吗?
所属分类:
网页制作 / CSS
阅读数:
1470
收藏 0赞 0分享
在印刷排版中“point”是一个绝对的单位,它等于1/72英寸。可以用尺子丈量的,物理的英寸。
但在CSS中pt的含义却非如此,例如我们指定一个字体是9pt,浏览器会以CSS规范解释,它等于:
9*1/72=1/8inch
这是一个误解,因为我们的显示器被分割为了一个个的像素,单个像素只能有一种颜色(为了简化,这里暂不讨论次像素反锯齿技术),要在屏幕上显示,必须先把以pt为单位的长度转换为以像素为单位的长度,这个转换的媒介,就是dpi(事实上,这里的所谓的dpi,是操作系统和浏览器中使用的术语,即为PPI,pixelsperinch,扫描仪、打印机、数码相机中的DPI是不同的)。
例如,无论在哪个操作系统中,Firefox浏览器默认的dpi都是96,那么实际上:
9pt=9*1/72*96=12px
所以,虽然“pdi”中的“I”和“1pt”等于1/72inch中的“inch”,都不代表物理上的英寸,但这两个单位互相之间是相等的,也就在相乘中约掉了。
那么,真实的物理长度怎么计算呢?请拿出一把尺子,丈量你的显示器的可见宽度(我这里是11.2992英寸),除以横向分辨率(我这里是1024像素),得到的就是每个像素的物理长度。
现在我们可以回答这样一个问题,网页上9pt的字体究竟占用了多宽的空间?答案是:
9*1/72*96*11.2992/1024=0.1324英寸=0.3363厘米
有兴趣的朋友可以自己测试一下。
js 解决隐藏与显示div的相关问题
我的导航中就有一栏产品中心下面用隐藏个div然后鼠标放上去就显示出来,但是导航那一块div一直出不来,什么都没有,很是郁闷不知道是什么原因
收藏 0赞 0分享
ie10 css hack 条件注释等兼容方式整理
ie10已经上线一段时间了,相信已经有一部分前端潮人体验过了,截至到现在,在ie6到ie9的浏览器各种各样的古怪行为,开发人员不得不使用条件注释,有条件的类,和其他特定于IE的css hack来解决
收藏 0赞 0分享
IE6双倍边距 IE6浏览器会出现双倍边距解决方法
所谓的IE6双倍边距就是指当元素有float属性,又有margin属性时,在IE6下面显示的margin的值是设置值的两倍,这个问题从有css技术时就已经诞生,本文将介绍详细解决方法,需要的朋友可以参考下
收藏 0赞 0分享
css 网页背景图片 怎样用CSS实现大背景网页效果
在网页设计制作中经常会遇到这样的问题:用图片做背景时,由于显示器分辨率太大或者图片尺寸太小,在页面的两边或者下部了没有背景图片,使页面变的很僵硬,于是搜集整理一些,晒出来和大家分享
收藏 0赞 0分享
查看更多