笔记-深入理解CS

166 阅读2分钟

基础知识:Casading规则、选择器、继承、值和单位、盒模型

01层叠(cascading)、优先级

层叠、优先级

由层叠概念引申出的css代码good practice

选择器尽量少用id

尽量不要用!important

自己的样式加载在引用库样式的后面

01继承

大部分具有继承性的属性跟文本相关:

Color、font、font-family、font-size、font-weight、font-variant、font-style、line-height、letter-spacing、text-align、text-indent、text-transform、while-space以及word-spacing还有少部分列表、表格的属性

可以使用inherit关键字显示指定一个属性值从其父元素继承

盒模型

浏览器根据视觉格式化模型,将所有元素表示为盒子模型,css通过盒模型做layout

02布局

常规流、弹性盒子、grid、定位

02概述

CSS 3之前的常用布局

Normal Flow 常规流:默认的布局方式;有块级格式化上下文和内联格式化上下文

Float浮动流:用float属性控制脱流,做横向布局

Positioning定位流:用position属性控制;fixed和absolute脱离文档流可以自由定位、覆盖等

CSS3之后的新增布局

Flex弹性盒子布局;一维空间布局

Grid网格布局;二维空间布局

Multicol多列布局;文本、内容的多列展示

常规流布局

外部显示类型:规定了该盒子如何与同一格式上下文中的其他元素一起显示

内部显示类型:规定了该盒子内部的布局方式。

块级格式化上下文

外边距塌陷

会产生外边距塌陷的情况:

两个兄弟元素之间相邻的上下外边距

父子元素之间相邻的上下外边距

内容为空元素自己上下外边距相邻

消除外边距塌陷的方法:

在两个相邻的上下边距之间增加border、padding或者内联元素,使之不相邻;

在父子元素重叠时,除了上述方法,还可以设置父元素为BFC,使得父子不在同级BFC中