深入CSS(上)(下) | 青训营

66 阅读1分钟

知识点一

选择器优先级

1.根据特异度(越特殊优先级越高)

eg: .btn.primary { color: #fff; background: #218de6;优先 codepen.io/webzhao/emb…

2.继承

codepen.io/webzhao/emb…

不可继承想要继承可用:显式继承

3.CSS中,每个属性都有一个初始值,可能是没有继承到等

知识点二

CSS三种布局方式:常规流(行级,块级、表格布局、FlexBox及Grid布局)、浮动及绝对定位

Width:指定 content box 宽度

height:指定 content box 高度

padding:指定元素四个方向的页边距(eg:10px)

border:指定容器边框样式、粗细和样式(可以单独设置每一个)

image.png

margin:指定元素四个方向外边距

codepen.io/webzhao/emb…

codepen.io/webzhao/emb…

box-sizing:border box

codepen.io/webzhao/emb…

overflow:不把宽度等固定死,超越容器本身宽度等溢出部分展示

分类讨论

块级:Block Level Box

行级:Inline Level Box 盒模型中Width、height不适用

常规流 Normal Flow

行级排版上下文:

codepen.io/webzhao/emb…

块级排版上下文

BFC内排版规则:

codepen.io/webzhao/emb…

Flex Box:一种新的排版上下文,目前用的最多

codepen.io/webzhao/emb…

Flexibility

flex-grow(有剩余空间时的伸展能力)

codepen.io/webzhao/emb…

flex-shrink(容器空间不足时收缩的能力)

codepen.io/webzhao/emb…

flex-basis

Grid布局:二维的布局方式

划分网格

浮动:float(文字环绕效果)

codepen.io/webzhao/emb…

绝对定位:

position属性:

codepen.io/webzhao/emb…

codepen.io/webzhao/emb…