CSS3学习dispaly:inline和float:left两者区别

1.display:inline:
任何不是块级元素的可见元素都是内联元素。其表现的特性是“行布局”形式!(行布局:其表现形式始终以行进行显示)
 
2.float:left:指定元素脱离普通的文档流而产生的特别的布局特性。并且float必需应用在块级元素之上,也就是说浮动并不应用于内联标签。或者可以说如果应用了float这个元素将被指定为块级元素。
那么两者的区别显而易见:display:inline元素不能设置宽高,因为它属于行布局,其特性是在一行里进行布局,所以不能被设定宽高。
简单的说就是float可以设置宽高,然而display:inline;虽然也会浮动,但是他不能设置宽高。
 
<html> 
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>float-inline</title>  
<style>  
  *{text-align:center;padding:4px;}   
  div,p{text-align:left;}   
  span{background:#f5f5f5;border-left:1px#eeesolid;   
  border-top:1px#eeesolid;border-right:1px#cccsolid;   
  border-bottom:1px#cccsolid;}   
  ul#inline li{display:inline;list-style:none;
  border-left:1px#cccsolid;width:300px;background:#f5f5f5;height:200px;}  
  ul#float li{float:left;display:inline;list-style:none; 
  border-left:1px#666solid;width:300px;background:#f5f5f5; height:200px;}   
</style> 
 
</head> 
 
<body>  
<span style="300px;">  
span为内联/inline元素,给他宽度赋值是没有效果的。</span> 
 
<span style="100px;float:right;">span为内联/inline元素,  
给他宽度赋值100px+float:right;可以看到有了宽度。</span> 
 
<div>  
<p>这个li被定义为内联/inline,设置宽和高度没有效果</p>  
<ul id="inline">  
<li>test</li>  
<li>test</li>  
</ul>  
</div> 
 
<div>  
<p>这个li被定义为内联/inline+float:left,设置宽和高度有效果</p>  
<ul id="float">  
<li>test</li>  
<li>test</li>  
</ul> 
 
</div> 
 
</body>  
</html> 
 
原文地址:https://www.cnblogs.com/jerry666/p/5223383.html