CSS+DIV 布局三种定位方式

一、普通流
  普通流中元素框的位置由元素在HTML中的位置决定。块级元素从上到下依次排列,框之间的垂直距离由框的垂直margin计算得到。行内元素在一行中水平布置。

二、定位
  1、相对定位
  被看作普通流定位模型的一部分,定位元素的位置相对于它在普通流中的位置进行移动。使用相对定位的元素不管它是否进行移动,元素仍要占据它原来的位置。移动元素会导致它覆盖其他的框。相对定位不影响其父类元素和兄弟元素。
  2、绝对定位
  相对于已定位的最近的祖先元素(position 不为static的元素),如果没有已定位的最近的祖先元素,那么它的位置就相对于最初的包含块。绝对定位的框可以从它的包含块向上、下、左、右移动。
  绝对定位的框脱离普通流,所以它可以覆盖页面上的其他元素,可以通过设置Z-Iindex属性来控制这些框的堆放次序。
  3、固定定位
  相对于浏览器窗口,其余的特点类似于绝对定位,也就是在移动窗口的时候,元素位置不变。

三、浮动
  浮动的框可以在左右移动,直到它的外边框边缘碰到包含框或另一个浮动框的边缘。浮动的框脱离普通流。
  如果包含块太窄,无法容纳水平排列的浮动元素,那么其他浮动块向下移动,直到有足够多的空间。如果浮动元素的高度不同,那么当它们向下移动时可能会被其他浮动元素卡住。
  行内元素会围绕着浮动框排列。

原文地址:https://www.cnblogs.com/zuiyirenjian/p/3619855.html