深入理解CSS | 青训营

52 阅读2分钟

今天是青训营的第三讲——深入理解CSS。而本讲分为了上下两部分,深入CSS的上部分主要讲,在了解 CSS 基本原理后,进一步深入讨论,通过具体案例对于选择器的特异度展开讲解,在此基础上进一步引出 CSS 继承与布局的话题,对其定义及相关技术分别作出介绍。而其下部分主要围绕盒模型中行“行级”与“块级”这两种常见的布局结构展开,讲解其基本定义、各自特征、工作属性和排版规则,提供业内操作思路,帮助同学强化 CSS 实战技能。 深入CSS(上)主要有四部分的重点:1、CSS 选择器的特异度;2、CSS 继承;3、CSS 求值过程解析;4、CSS 布局方式及相关技术。 首先举例展示了选择器的特异度,接着提到了继承,继承是指某些属性会自动继承其父元素的计算值,除非显式指定一个值,而显示继承如下: *{ box-sizing:inherit; }

html{ box-sizing:border-box; }

.some-widget{ box-sizing:content-box; } 然后就是CSS的求职过程,先来讲讲初始值,CSS中,每个属性都有一个初始值,例如background-color的初始值为transparent,margin-left的初始值为0,也可使用initial关键字显示重置为初始值,例如background-color:initial,而布局则需确定内容的大小和位置的算法,依据元素、容器、兄弟节点和内容等信息来计算,接着讲讲各个的用法,width,1、指定content box宽度;2、取值为长度、百分数、auto;3、auto由浏览器根据其它属性确定;4、百分数相对于容器的content box宽度,height:1、指定content box高度;2、取值为长度、百分数、auto;3、auto取值由内容计算得来;4、百分数相对于容器的content box高度;5、容器有指定的高度时,百分数才生效,padding:1、指定元素四个方向的内边距;2、百分数相对于容器宽度,border:指定容器边框样式、粗细和颜色,margin:1、指定元素四个方向的外边距;2、取值可以是长度、百分数、auto;3、百分数相对于容器宽度。 上半部分就是这些了,下半部分见下一篇文章。