css深入

71 阅读2分钟

选择器优先级

特异度,特异度越高,优先级越高
id选择器>类选择器>标签选择器

继承

一般文字相关属性可以继承

显示继承

通过inherit关键字
box-sizing:inherit

初始值

css中,每个属性有一个初始值,可以使用initial关键字显式重置为初始值

布局

1.常规流 行级,块级,表格布局,flexBox,Grid布局 2.浮动 3.绝对定位

盒子模型

默认width等设置的是盒子内容的宽度,不包括boder等
解决:box-sizing : border-box
解决溢出:overflow:hidden

块级元素

独立成行
display:block

行级元素

不独立成行,宽高设置不生效
display:inline
diplay: inlineblock

行级排版上下文

inline Formating Context(IFC) 只包含行级盒子的容器会创建一个IFC IFC内的排版规则 1.盒子在一行内水平摆放 2.一行放不下的时候,换行显示 3.text-align 决定一行的盒子的水平对齐 4.vertical-align 决定一个盒子在行内的垂直对齐 5.避开浮动元素

块级排版上下文

block formatting Context(BFC) 某些容器会创造BFC: 根元素 浮动,绝对定位,inline-block Flex子项与Grid子项 overflow值不是visible的块盒 display:flow-root BFC排版规则: 盒子从上到下排版 垂直margin合并 BFC内盒子的margin不会和外面的合并 BFC不会和浮动元素重叠

flex布局

1.给父元素添加 display:flex 主轴/侧轴 2.父元素添加相关属性 justify-content 转存失败,建议直接上传图片文件 align-items 转存失败,建议直接上传图片文件 3.子元素添加 flex-grow:数字(伸缩所剩下的空间)

Grid布局

1.给父元素添加 diplay:grid 使用grid-template相关属性将容器划分为网格 设置每一个子项占哪些行,哪些列 转存失败,建议直接上传图片文件

浮动布局

文字环绕效果

绝对定位

属性:position
属性值:默认static
	1.relative
		相对原本自己的位置进行偏移
		不脱标
	2.absolute
		相对最近的非static 祖先进行定位
		脱标
	3.fixed
		相对浏览器窗口位置