css文档流

74 阅读2分钟

css文档流: 普通流: 元素默认从上至下,从左至右的排列顺序 浮动流: 添加了浮动后的排列顺序,脱离文档流(普通流) 定位流: 添加了定位后的排列顺序,脱离文档流(普通流)

定位: 改变元素的位置(禁止在搭建页面结构过程中大面积使用定位)
	position:定位;
		坐标轴:
			水平: left right
			垂直: top bottom
		定位值:
			默认定位:static
				【注】默认值,无法改变坐标属性

			绝对定位:absolute
				脱离文档流
				能改变坐标属性,可以为负数
				默认参考根元素(html),或者参考最近的有定位的父元素(默认定位除外)

			相对定位:relative
				占据文档流
				能改变坐标属性,可以为负数
				默认参考自身加载到浏览器中的初始位置
				

			固定定位: fixed
				脱离文档流
				能改变坐标属性,可以为负数
				参考浏览器窗口改变自己的位置
				在页面中固定不动

			粘性定位: sticky
				占据文档流
				能改变坐标属性,可以为负数
				参考浏览器窗口改变自己的位置
				在页面中固定不动
				结合了相对定位和固定定位的特征

		绝对定位 和 相对定位的区别
			1: 参考物不同
				前者参考根元素或最近的有定位的父元素
				后者参考自身加载到页面中初始位置

			2: 是否占据文档流
				前者脱离文档流
				后者占据文档流

		包含块:
			1: 嵌套结构
			2: 父元素设置position:relative; 子元素设置position:absolute;
			3: 子元素参考最近的有定位的父元素

		z-index:层级关系;
			auto 默认值
			数字越大,层级越高,反之越小
			可以为负数
			【注】
				必须加了定位的元素才能修改层级关系,默认定位除外
				
				并列(兄弟)关系:
					都能修改层级关系

				嵌套(父子)关系:
					修改子元素的层级关系

	定位居中方式:
		方式一:
			position:absolute;
			left:0;
			right:0;
			top:0;
			bottom:0;
			margin:auto;

		方式二:
			position:absolute;
			left:50%;
			margin-left:-宽度的一半;
			top:50%;
			margin-top:-高度的一半;

	锚点:实现页面内部的跳转
		1: 点击位置
			<a href="#name"></a>
		2: 跳转位置
			<标签 id="name"></标签>

	透明度:
		opacity:0.5; 
			取值范围: 0-1
			高版本浏览器识别
		filter:alpha(opacity=50);
			取值范围: 0-100
			低版本ie识别