css的定位:
其中css中被分为块级元素与行内元素。如块级元素div、hx标签、p元素。行内元素span和strong
W3school给出的一切皆为框的定义。
而且可以使用display属性,强行将行内元素变为块级元素。如display:block。
CSS的定位机制:
主要分为三类:
普通流、浮动、和绝对定位。
position属性
static元素框正常生成。块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。
relative元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。
absolute元素框从文档流完全删除,并相对于其包含块定位。包含块可能是文档中的另一个元素或者是初始包含块。元素原先在正常文档流中所占的空间会关闭,就好像元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。
fixed元素框的表现类似于将 position 设置为 absolute,不过其包含块是视窗本身。
定位属性:
position | 把元素放置到一个静态的、相对的、绝对的、或固定的位置中。 |
top | 定义了一个定位元素的上外边距边界与其包含块上边界之间的偏移。 |
right | 定义了定位元素右外边距边界与其包含块右边界之间的偏移。 |
bottom | 定义了定位元素下外边距边界与其包含块下边界之间的偏移。 |
left | 定义了定位元素左外边距边界与其包含块左边界之间的偏移。 |
overflow | 设置当元素的内容溢出其区域时发生的事情。 |
clip | 设置元素的形状。元素被剪入这个形状之中,然后显示出来。 |
vertical-align | 设置元素的垂直对齐方式。 |
z-index | 设置元素的堆叠顺序 |
CSS的相对定位:
如图所示,移动了位置任然占有原来的位置。