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 >

</div>

  • 一列DIV的居中显示、

#style1

{

width : 766px;

height : 200px;

margin-left :auto;

margin-right :auto;

}

  • DIV中文字垂直居中

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

#style1

{

width : 766px;

height : 200px;

line-height :200px;

}