CSS关键特性之float学习培训心得(共享)

日期:2020-09-20 类型:科技新闻 

关键词:html网页制作,php网页制作,网页设计稿,网页编辑工具,学生网页设计模板


大家看来看CSS关键特性--float。

下列內容分成以下小标题:

1:float特性

2:float特性的特点   

  2.1:float之文本围绕实际效果

  2.2:float之父元素高宽比塌陷

3:消除波动的方式

  3.1:html法

  3.2:css伪元素法

4:float去空格化

5:float元素块状化

6:float流体合理布局   

  6.1:单侧固定不动

  6.2:DOM与显示信息部位不一样的单侧固定不动

  6.3:DOM与显示信息部位同样的单侧固定不动

  6.4:智能化合理布局

1:float特性

  float,说白了是漂浮,波动的意思。可是在css中,它被了解成波动。float有4个特性,即

CSS Code拷贝內容到剪贴板
  1. float:none;   
  2. float:left;   
  3. float:rightright;   
  4. float:inherit;  

较为常见的两个特性值是左波动和右波动。在接下来的共享中,只会拿左波动做为事例。别的波动特性值与左波动基本原理同样。

2:float特性的特点

  2.1:float之文本围绕实际效果

波动的初衷便是以便文本围绕实际效果。

看以下编码和demo。

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.     <div class="content"></div>  
  3.     <p>  
  4. Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!   
  5.         </p>  
  6.     </div>  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   width300px;   
  3.   height300px;   
  4.   border1px solid black;   
  5. }   
  6. .container .content {   
  7.   floatleft;   
  8.   width150px;   
  9.   height150px;   
  10.   background-color: lightpink;   
  11.   margin5px;   
  12. }  

content 元素设定了左波动,使div元素摆脱文本文档流,文本在其周边坏绕显示信息。

  2.2:float之父元素高宽比塌陷

以div元素为例。div元素的高宽比会根据內容全自动撑开。也便是说,內容有是多少,高宽比就有多高。可是当內部元素设定了float特性以后,会是父元素高宽比塌陷。编码和案例以下。

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.     <p>  
  3. Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!   
  4.     </p>  
  5. </div>  

以下,塌陷后css和demo。

CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   width300px;   
  3.   border1px solid black;   
  4. }   
  5. .container p {   
  6.   floatleft;   
  7. }  

3:消除波动的方式

那末难题来了,假如內部元素要设定波动,那怎样防止父元素高宽比塌陷的难题呢?

有同学毫无疑问会想,立即在父元素设定高宽比不便可以了吗?这在具体中是不好的。由于假如固定不动了父元素的高宽比,那假如以后想在其加上內容,并不是又要去改动css编码了,特不便。

那处理父元素高宽比塌陷有两种方式。
  
3.1:父元素底部加上空div,随后在加上特性clear : both。

  编码以下。

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.             <p>  
  3.             Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!   
  4.             </p>  
  5.             <div class="clearfix"></div>  
  6.         </div>  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   width300px;   
  3.   border1px solid black;   
  4. }   
  5. .container p {   
  6.   floatleft;   
  7. }   
  8. .container .clearfix {   
  9.   overflowhidden;   
  10.   *zoom: 1;   
  11. }  

3.2:父元素设定伪类after。

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.             <p>  
  3.             Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!Hello World!   
  4.             </p>  
  5.         </div>  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   width300px;   
  3.   border1px solid black;   
  4.   *zoom: 1;   
  5. }   
  6. .container p {   
  7.   floatleft;   
  8. }   
  9. .container:after {   
  10.   content"";   
  11.   display: table;   
  12.   clearboth;   
  13. }  

4:float元素去空格化

是甚么意思呢?在平常的编号中,以便要合乎HTML编号标准,都会为html标识加上缩进,做到美观大方的实际效果。但是缩进时就会造成空格,也便是&nbsp;。当给元素设定左波动时,元素自身左波动,剩下的空格会被挤到最终,也便是上文所说的文本围绕实际效果。可是,要记牢1点,&nbsp;和回车敲下的空格的实际效果略有不一样。

5:float元素块状化

在为内联元素设定波动特性以后,display特性由inline变为block。而且能够为内联元素设定宽高。应用float加width特性能够完成1些简易的固定不动宽度的合理布局实际效果。

6:float流体合理布局

  6.1:单侧固定不动,右边自融入的合理布局。

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.              <div class="left">左波动+固定不动宽度</div>  
  3.              <div class="right">右侧自融入宽度+margin-left</div>  
  4.          </div>  
CSS Code拷贝內容到剪贴板
  1. .container{   
  2.     max-width:90%;   
  3.     margin:0 auto;   
  4. }   
  5.   
  6. .left{   
  7.     float:left;   
  8.     text-align:center;   
  9.     background-color: lightpink;   
  10.     width200px;   
  11.     height:300px;   
  12. }   
  13.   
  14. .rightright{   
  15.     background-color: lightyellow;   
  16.     margin-left:200px;   
  17.     height:300px;   
  18.     padding-left:10px;   
  19. }  

6.2:DOM与显示信息部位不一样的单侧固定不动

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.              <div class="right">右波动+固定不动宽度</div>  
  3.              <div class="left">左侧自融入宽度+margin-right</div>  
  4.          </div>  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   max-width: 90%;   
  3.   margin: 0 auto;   
  4. }   
  5. .container .rightright {   
  6.   floatrightright;   
  7.   width200px;   
  8.   height200px;   
  9.   background-color: lightpink;   
  10. }   
  11. .container .left {   
  12.   background-color: lightyellow;   
  13.   margin-right200px;   
  14.   height300px;   
  15.   padding-left10px;   
  16. }  

也便是说,html元素与显示信息在网页页面上的元素部位不同样。

  6.3:DOM与显示信息部位同样的单侧固定不动

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.             <div class="left-content">  
  3.                 <!-- 左波动+width100% -->  
  4.                 <div class="left">margin-right</div>  
  5.             </div>  
  6.             <div class="right">左波动+固定不动宽度+margin-left负值</div>  
  7.         </div>  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   max-width: 90%;   
  3.   margin: 0 auto;   
  4. }   
  5. .container .rightright {   
  6.   floatleft;   
  7.   width200px;   
  8.   height200px;   
  9.   background-color: lightpink;   
  10.   margin-left: -200px;   
  11.   height300px;   
  12. }   
  13. .container .left {   
  14.   background-color: lightyellow;   
  15.   margin-right200px;   
  16.   height300px;   
  17.   text-aligncenter;   
  18. }  

6.4:智能化合理布局

所谓智能化合理布局,便是两栏都不必须设定宽度,宽度随內容自融入。

XML/HTML Code拷贝內容到剪贴板
  1. <div class="container">  
  2.             <div class="left">  
  3.                 float+margin-right+自融入宽度   
  4.             </div>  
  5.             <div class="right">  
  6.                 display:table-cell  ---IE8+;   
  7.                 display:inline-block   ---IE7+;   
  8.                 自融入宽度   
  9.             </div>  
  10.         </div>  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   max-width: 90%;   
  3.   margin: 0 auto;   
  4. }   
  5. .container .left {   
  6.   floatleft;   
  7.   height300px;   
  8.   background-color: lightpink;   
  9. }   
  10. .container .rightright {   
  11.   displaytable-cell;   
  12.   *displayinline-block;   
  13.   height300px;   
  14.   background-color: lightyellow;   
  15. }  
CSS Code拷贝內容到剪贴板
  1. .container {   
  2.   max-width: 90%;   
  3.   margin: 0 auto;   
  4. }   
  5. .container .left {   
  6.   floatleft;   
  7.   height300px;   
  8.   background-color: lightpink;   
  9. }   
  10. .container .rightright {   
  11.   displaytable-cell;   
  12.   *displayinline-block;   
  13.   height300px;   
  14.   background-color: lightyellow;   
  15. }  

总结下列:

1:当1个元素设定float特性时,会使元素块状化。

2:float特性的造就初衷便是以便文本围绕实际效果而生的。

3:float元素会使父元素高宽比塌陷。

4:float元素会去除换行带来的空格。

5:应用float能够完成两栏自融入的合理布局。

以上这篇CSS关键特性之float学习培训心得(共享)便是网编共享给大伙儿的所有內容了,期待能给大伙儿1个参照,也期待大伙儿多多适用脚本制作之家。

上一篇:CSS: hover挑选器的应用详解 返回下一篇:没有了