DIV+CSS中的float浮动定位笔记。

  float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄。

  • 浮动元素将以块级元素出现,即display=block并将忽略display的其他设置。
  • 浮动元素后的元素将浮动到浮动元素的位置
  • 浮动元素将向左或向右直到遇到边框或一个块级元素位置
  • 创建固定宽度的DIV

      设置宽度为固定值

#style1
        {
            width :300px;
            height :200px;
        }

  •  创建宽度自适应的DIV

       设置宽度为百分值

#style1
        {
            width :100%;
            height :200px;
        }

  • 创建两列固定宽度DIV

        需要同时设置宽度为固定值

#left       

       {
            width :300px;
            height :200px;
            float :left ;
        }
#right       

       {
            width :600px;
            height :200px;
            float :left ;
        }

  • 创建两列自适应宽度DIV

      需要同时设置宽度为百分值,左右列都向左浮动。

#left       

       {
            width :30%;
            height :200px;
            float :left ;
        }
#right       

       {
            width :70%;
            height :200px;
            float :left ;
        }

  • 创建一列固定宽度,一列自适应的两个DIV

         设置左列向左浮动,另外一列既不设置宽度也不设置浮动。该段代码在IE下测试通过,但是在FireFOX下style2会下移。(但我测试却没有问题,和基本一致)

 #left              

        {
            width :300px;
            height :200px;
            float :left ;
        }
#right       

        {
            height :200px;
        }

        如果在FireFox中不正常显示,需要修改代码。增加margin-left属性设置左边距和左列宽度相等。如下:

 #left
        {
            width :300px;
            height :200px;
            float :left ;
        }
#right
        {
            height :200px;
            margin-left :300x;
        }

  • 实现三列,左右两列固定,中间一列自适应

      设置左右列的分别为向左和向右浮动,中间为不浮动

#left
        {
            width :300px;
            height :200px;
            float :left ;
        }
#center
        {
            height :200px;
        }
#right
        {
            width :300px;
            height :200px;
            float :right ;
        }


<!--需要设置的顺序为左,右,中--><div id="left">
</div>
<div id="right">
</div>
<div id="center">
</div>

  • 一列DIV的居中显示、

#style1
        {
            width : 766px;
            height : 200px;
            margin-left :auto;
            margin-right :auto;
        }

  • DIV中文字垂直居中

    需要设置line-height行间距和高度相等,此方法比较流行,但是我觉得不是个好办法。

#style1
        {
            width : 766px;
            height : 200px;
            line-height :200px;
        }

   

原文地址:https://www.cnblogs.com/mane/p/2155293.html