• px和em的区别


    px和em的区别  

    2012-06-21 23:01:06|  分类: CSS|字号 订阅

    在如今这个提倡可用性设计以及用户体验设计的网络时代,CSS也是要一同参与其中的。大部分人在CSS代码编写中总是先对整体定义字体尺寸,中文情况下一般为12px,而其实这样以来在通过IE顶部菜单中的“察看-文字大小”设置已无任何作用。对字体感觉太小的浏览者而言无疑是种很不好的用户体验过程。其实这一切都可以避免,那就是使用em单位作为字体显示单位。

    所有浏览器的默认字体大小是16px,所以未经调整的浏览器在显示1em=16px。换算过来的话也就是说1px=0.0625em,也就是12px=0.75em, 10px=0.625em,通过1px=0.0625em大家可以在CSS编写时通过px转换成em。不过还有一种更方便的方法,继续往下看!

    这种方法要用到%单位(仅1次),其实%和em简单的话可以理解成前者只是比后者多2个0。为了简化font-size的换算,大家可以在css中的body中先全局声明font-size=62.5%,这里的%的算法和em一样,100%=16px,1px=6.25%,10px=62.5%,也就是定义了默认字体大小为10px。很多初学者可能会在此定义0.625em或者直接定义12px,这是没有效果的,一定要定义font-size=62.5%!由于em具有会继承父级出血元素的字体大小的特点,这是的1em=10px,所以12px=1.2em。px与em的转换通过10就可以得来,很方便了吧!

    此外有一点必须要注意,可能是IE处理汉字时,对于浮点的取值精确度有限,在body下62.5%出来的12px字体比直接定义的要大一点点,只要将62.5%换成63%就可以了。通过以上对CSS代码的调整,你会发现自己的网站又向用户体验设计更靠近了一步,在如今这个提倡可用性设计以及用户体验设计的网络时代这是很重要的。

    1em指的是一个字体的大小,它会继承父级元素的字体大小,因此并不是一个固定的值。

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

    p { text-indent: 2em; }

  • 相关阅读:
    android和struts2实现android文件上传
    android--使用Struts2服务端与android交互
    Android与服务器端数据交互(http协议整合struts2+android)
    Android+struts2+JSON方式的手机开发(Login)
    MyEclipse6.5安装SVN插件的三种方法z
    Activity 怎样获得另一个xml布局文件的控件
    Android 自定义dialog(AlertDialog的修改样式)
    Android 用代码来实现selector
    Android 对话框弹出位置和透明度
    Android 对话框弹出位置和透明度的设置
  • 原文地址:https://www.cnblogs.com/xiaoleidiv/p/3441921.html
Copyright © 2020-2023  润新知