当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 你知道CSS中长度单位pt、px、dpi的意思吗?

CSS样式表
CSS实例代码:网页背景渐变
CSS教程:dashed和dotted的区别
各种不同的浏览器对CSS3和HTML5的支持状况
15个高质量免费的WEB标准网站模板
Firefox Bug: inline/inline-block的间隙
CSS网页布局问题:li上多出的margin问题
css reset样式初始化
CSS解决链接锚点定位偏移
CSS设置的背景图片在IE7中点击消失
CSS教程:兼容ie6,ie7,ff的fixed
css网页布局中文字排版的属性和用法
CSS Sprites探讨
CSS Tricks精选出的一些精灵图片
40个有吸引力的导航菜单实例
CSS3实例教程:倾斜的网页图片库
遵循web标准 网页前端得3类优化
CSS 3给我们带来了什么惊喜?
网页重构:由网页图标处理引发的思考
CSS代码:控制IE滚动条
CSS实例教程:用ul li做圆角表格

CSS样式表 中的 你知道CSS中长度单位pt、px、dpi的意思吗?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 188 ::
收藏到网摘: n/a


  在印刷排版中“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厘米
  有兴趣的朋友可以自己测试一下。