• 有趣的em


       在此之前,一直坚定不移的使用中px作为一切长度的度量单位,直到今天拿到【css揭秘】,感觉发现了新大陆一样,里面大量的关于em的介绍,有点眼花缭乱,只好去拜读大神的笔记。。。。

      em作为一个相对量的单位,1任何字体中的字母所需要的垂直空间,em也可以理解为一个百分比单位,em的值=需要转换的像素值/自身或父元素的font-size(当自身元素设置了font-size时取自身font-size否则取父元素的font-size)

      下面用一个例子来对比一下em和px

      

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>测试EM</title>
    	<style type="text/css">
    		#wrap{
    			 400px;
    			height: 400px;
    			margin: 0 auto;
    			border:1px solid #000;
    			padding: 10px;
    			font-size: 16px;
    		}
    		#wrap p{
    
    		}
    	</style>
    </head>
    <body>
    	<div id="wrap">
    	<p>
    		Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
    		tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
    		quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
    		consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
    		cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
    		proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
    	</div>
    	</p>
    </body>
    </html>
    

     

    当我们通过ctrl+滚轮来放大缩小页面时,由于我们使用的都是绝对值,所以会出现“溢出的现象”

    以上是按照以往的px来定义的绝对值情况下出现的,接下来我们使用em来改造一下

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>测试EM</title>
    	<style type="text/css">
    		#wrap{
    			 25em;
    			height: 25em;
    			margin: 0 auto;
    			border:1px solid #000;
    			padding: .625em;
    			font-size: 16px;
    		}
    		
    	</style>
    </head>
    <body>
    	<div id="wrap">
    	<p>
    		Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
    		tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
    		quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
    		consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
    		cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
    		proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
    	</div>
    	</p>
    </body>
    </html>
    

      把之前的400px等通过 400/16(当前元素的font-size)转换成em效果图如下

    按住ctrl+滚轮来缩放得到下图

    比较px和em情况下的缩放,发现使用em不会出现px中的‘溢出’现象

    更多技术细节请参考http://www.w3cplus.com/css/px-to-em,大神的总结

  • 相关阅读:
    客户数据库出现大量cache buffer chains latch
    Oracle 表空间与数据文件
    一些优秀的个人空间
    DBMS_STATS.GATHER_TABLE_STATS详解
    C#获取主程序目录的方法
    python 里的 continue 和 break 语法理解
    Python 打印九九乘法表
    数据可视化平台 Apache Superset 安装
    jinja2.Markup 对HTML文本文件进行处理
    Chrome Console 控制台使用指南
  • 原文地址:https://www.cnblogs.com/V-JACK/p/5512631.html
Copyright © 2020-2023  润新知