css的三大特性:
层叠 继承 优先级(必须掌握的三个特性)
层叠性:
多重css样式的叠加
(两个相同的选择器属性一样时,后面的属性值会把前面的属性值覆盖掉)
继承性:
子标签会继承父标签的某些样式,如文本颜色和自豪 想要设置一个可继承的属性只需要将他应用于父元素 如(font- text- line- color)
优先级:
css的特殊性:
Specificity用一个四位的数字串(css2是三位)来表示 更像四个级别 值从左到右左边的一级大于右边的一级
优先级:继承过来的和*是0 0 0 0(最小的)
标签是0 0 0 1
每个类和伪元素(class)是0 0 1 0
id是0 1 0 0
行内样式是1 0 0 0
!important 最大的优先级(只能写在标签行内里)
注意:数位之间没有进制,比如:0,0,0,5+0,0,0,5=0,0,0,10并不能变成0,0,1,0
盒子模型(重点):
css'是三个大模块:盒子模型 浮动 定位 其余的都是细节 要求学的非常精通
将html看成一个矩形的盒子,每个矩形都由元素的内容 内边距 边框和外边距组成
看透网页布局的本质:
如何把里面的文字 图片 按照ui给的图片用块嵌套起来
盒子边框:border-style:solid(实线)dashed(虚线)dotted(点线)double(双实线)none(不显示边框,默认值)
表格的细线边框
内边距:
padding属性用于设置内边距 是指边框与内容之间的距离
padding-top 上内边距left左right右bottom下
外边距:
margin属性用于设置外边框 设置外边距会在元素之间留有空白
margin-top(left,right,bottom)
外边距实现盒子居中(margin:auto):
必须是块级元素
盒子必须指定了宽度
清楚元素的默认内外边距:
* {padding: 0; /*清除内外边距*/
margin: 0; /*清除外边距*/}
嵌套块元素垂直外边距的合并:
overflow:hidden