CSS定位

49 阅读2分钟

定位:

1. CSS 三大布局:

	盒子模型  浮动  定位

2. CSS的 三大布局流:

	标准流 (从左到右 从上到下 有空位则自动补)
	浮动流  (元素进行浮动,在标准流之上,多个浮动元素会相互紧贴)
	定位流  (元素进行定位,在标准流、浮动流之上,可以在任意位置,也可以相互覆盖)

3. 元素的定位属性主要包括定位模式和边偏移(偏移值)两部分

	常用定位模式:
		相对定位:
		绝对定位:
		固定定位:
	偏移值:
		left 
		right
		top
		bottom
			单位: px / 像素 , 百分比

4. 偏移量(偏移值): 指元素某个位置 跟 某元素的距离

	left  	 元素与左面的距离
	right    元素与右边的距离
	top      元素与上边的距离
	bottom   元素与下边的距离
	(尽量避免同时设置上与下、左与右)

5. 定位属性:

	定位元素会根据html的结构 进行层级覆盖(后写的html会覆盖先写的html

5.1 相对定位:

		语法: position:relative;
		作用: 相对定位是将元素相对于它在标准流中的位置进行定位,对元素设置相对定位后,可以通过边偏移属性改变元素的位置,但是它在文档流中的位置仍然保留。
		特性:
				1. 使元素具有定位属性(偏离量)
				2. 以自身(定位前的位置)为偏离标准 
				3. 进入定位流(但是会保留元素原本位置)
				4. 保留元素属性(原来为块级元素 定位后还是块级元素)
	

5.2 绝对定位:

		语法: position:absolute;
		特性: 
			 1. 将元素脱离标准流,进入定位流(元素不再占用空间)
			 2. 元素会被暗转为 行内块级元素(inline-block)
			 3. 偏离值的参照对象 优先寻找最近(爸爸、爷爷、姥爷)定位元素 如果没有定位元素则会以浏览器为定位元素
		小技巧:
			通常使用绝对定位 会将父元素设置相对定位来配合绝对定位
			(子绝父相)