子标签会继承父标签的某些样式,如文本颜色和字号。想要设置一个可继承的属性,只需将它应用于父元素即可。简单的理解就是: 子承父业。默认盒子相关的模型一般不继承,字体相关的模型一般都继承。
子元素可以继承父元素的样式(text-,font-,line-这些元素开头的可以继承,以及color属性),一般设置字体相关的样式都可以继承。设置盒子模型相关的设置都不可以继承。
2.css优先级1)权重计算公式
!important>内联样式>(A,B,C,D)> *>浏览器的默认样式>继承的样式
标签选择器计算权重公式继承或者 *0,0,0,0每个元素(标签选择器)0,0,0,1每个类,伪类0,0,1,0每个ID0,1,0,0每个行内样式 style=""1,0,0,0每个!important 重要的∞ 无穷大例:#d1 .child a[href]:hover{} A:0 B:1 C:2 D:1=>0 1 2 1
.parent .child a[href]:hover A:0 B:0 C:4 D:1=>0 0 4 1
div{color:pink!important;} 优先级最高
3.css盒子模型盒子模型就是把HTML页面中的布局元素看作是一个矩形的盒子,也就是一个盛装内容的容器。
-
盒子模型有元素的内容、边框(border)、内边距(padding)、和外边距(margin)组成。
-
盒子里面的文字和图片等元素是 内容区域
-
盒子的厚度 我们成为 盒子的边框
-
盒子内容与边框的距离是内边距(类似单元格的 cellpadding)
-
盒子与盒子之间的距离是外边距(类似单元格的 cellspacing)
盒子模型:
也可以简写内边距可以分别设置,顺序为:上 右 下 左,例如:
padding; 50px 40px 30px 20px;
padding; 50px 40px 30px ;//当少设置元素的时候,少设置的值会跟已设置的右边一致;
padding; 50px 40px;//此时上与下值相同,左与右值相同;
padding; 50px;//此时上下左右值均相同。
3.2外边距(margin) 属性作用margin-left左外边距margin-right右外边距margin-top上外边距margin-bottom下外边距用法与内边距基础用法一致,但左右外边距不重叠,上下外边距会重叠以大的边距为准。
1)块级盒子水平居中
盒子必须指定宽度,在左右设置外边距为auto,例如:
.header{ width:960px; margin:0 auto;}
3.3边框(border)语法:
border : border-width || border-style || border-color
例如:border: 1px solid red; 没有顺序
属性作用border-width定义边框粗细,单位是pxborder-style边框的样式border-color边框颜色边框的样式:none(没有边框,即忽略所有边框的宽度,为默认值);solid(边框为单实线,较为常用);dashed(边框为虚线);dotted(边框为点线);
1)边框设置
对于边框,可以对上下左右边框分别进行设置,具体如下:
上边框下边框左边框右边框border-top-style:样式;border-bottom-style:样式;border-left-style:样式;border-right-style:样式;border-top-width:宽度;border- bottom-width:宽度;border-left-width:宽度;border-right-width:宽度;border-top-color:颜色;border- bottom-color:颜色;border-left-color:颜色;border-right-color:颜色;border-top:宽度 样式 颜色;border-bottom:宽度 样式 颜色;border-left:宽度 样式 颜色;border-right:宽度 样式 颜色;2)表格的细线边框
语法:table{ border-collapse:collapse; }
-
collapse 单词是合并的意思
-
border-collapse:collapse; 表示相邻边框合并在一起。
例如:
table { width: 500px; height: 300px; border: 1px solid red; } td { border: 1px solid red; text-align: center; } table, td { border-collapse: collapse; /*合并相邻边框*/ }