CSS学习笔记

Posted coderkey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CSS学习笔记相关的知识,希望对你有一定的参考价值。

七,CSS三大特性

1,层叠性

(1)含义:

相同选择器给设置相同的样式,此时一个样式就会覆盖(层叠)另一个冲突的样式。

(2)原则:

样式冲突,遵循的原则是就近原则,哪个样式离结构近,就执行哪个样式。
样式不冲突,不会重叠。

2,继承性

(1)含义:

子标签会继承父标签的某些样式,如文本颜色和字号。

(2)注意:

子元素可以继承父元素的样式(text- , font- , line 这些元素开头的可以继承,以及color属性)。

(3)行高的继承性:

语法:

   body   {
          font:   12px/1.5   Microsoft;  /*  这里的12px是文字大小,1.5是行高*/
     }

注意:

(1)行高可以跟单位也可以不跟单位。
(2)如果子元素没有设置行高,则会继承父元素的行高1.5.
(3)此时子元素的行高是:当前子元素的文字大小乘以1.5

例如:

(1)如果子元素P的文字大小为16px,但是它没有设置行高,它会继承父元素的行高1.5;等于当前文字16px * 1.5 为24,所以它的行高为24px。

3,优先级

(1)含义:

当一个元素指定多个选择器,就会有优先级的产生。

(2)原则:

选择器相同,则执行层叠性。
选择器不同,则根据选择器权重执行。

(3)选择器的权重:

选择器选择器权重
继承或者 *0
标签(元素)选择器1
类选择器、伪类选择器10
ID选择器100
行内选择器 style=""1000
!important 重要的无穷大

(4)权重的叠加:

如果是复合选择器,则会有权重叠加,需要计算权重。

(5)例如:

div ul li ——1+1+1=3
.nav ul li ——10+1+1=12
a:hover ——1+10=11
.nav a ——10+1=11

(6)注意:

不管怎么相加,类选择器永远大于元素选择器,id选择器永远大于类选择器,以此类推。
继承性的权重是0,如果该元素没有直接选中,而是包含在父元素里面的,不管父元素权重多高,子元素得到的权重都是为0。a标签如果没有设置样式,会根据浏览器自带的蓝色字体和下划线显示。


八,盒子模型

盒子模型的组成: CSS盒子模型本质是一个盒子,封装周围的html元素,它包括:边框、外边距、内边距和实际内容组成

1,边框(border)

(1)含义:

border可以设置元素的边框。

(2)语法:

border-width | border-style | border-color;

(3)属性:

属性作用
border-width定义边框粗细(宽度),单位是px
border-style定义边框样式。solid(实线)、dashed(虚线)、dotted(点线)
border-color定义边框颜色

(4)边框的复合写法:

1,border:  1px  solid  red;    没有顺序
2,border-top  上边框;border-left  左边框;border-bottom  下边框;border-right  右边框;

(5)表格的细线边框:

含义;

   border-collapse属性控制浏览器绘制表格边框的方式。它控制相邻单元格的边框。

语法:

 border-collapse:  collapse;   /*  表示相邻边框合并在一起。*/

2,内边距(padding)

(1)含义:

padding属性用于设置内边距(内填充),即边框与内容之间的距离。

(2)属性:

属性作用
padding-top上内边距
padding-right右内边距
padding-bottom下内边距
padding-left左内边距

(3)复合属性:

值的个数表达意思
padding: 5px1个值,代表上下左右都有5像素的内边距
padding: 5px 10px2个值,代表上下内边距是5像素,左右内边距是10像素
padding: 5px 10px 20px3个值,代表上内边距5像素,左右内边距10像素,下内边距20像素
padding: 5px 10px 20px 30px4个值,代表上内边距5像素,右内边距10像素,下内边距20像素,左内边距30像素(顺时针)

(4)注意:

如果盒子本身没有指定width/height属性,则此时padding不会撑开盒子大小。

3,外边距(margin)

(1)含义:

margin属性用于设置外边距,即控制盒子与盒子之间的距离。

(2)属性:

属性作用
margin-top上外边距
margin-right右外边距
margin-bottom下外边距
margin-left左外边距

(3)复合属性:

值的个数表达意思
margin: 5px1个值,代表上下左右都有5像素的外边距
margin: 5px 10px2个值,代表上下外边距是5像素,左右外边距是10像素
margin: 5px 10px 20px3个值,代表上外边距5像素,左右外边距10像素,下外边距20像素
margin: 5px 10px 20px 30px4个值,代表上外边距5像素,右外边距10像素,下外边距20像素,左外边距30像素(顺时针)

典型应用

1,块级盒子水平居中

(1)条件:

1,盒子必须指定宽度。
2,盒子左右外边距都设置为auto。

(2)写法:

 1,margin:  0  auto;
 2,margin-left:  auto;    margin-right:  auto;
 3,margin: auto;

2,行内元素或者行内块水平居中

(1)方法:

给其父元素添加text-align: center即可。

3,相邻块元素垂直外边距的合并

(1)问题:

当上下相邻的两个块元素(兄弟关系)相遇时,如果上面的元素有下边距margin-bottom,下面的元素有上边距margin-top,则它们之间的垂直间距不是margin-bottom与margin-top之和。取两个值中的较大者这种现象被称为相邻块元素垂直外边距的合并。

(2)方法:

尽量只给一个盒子添加margin值。

4,嵌套块元素垂直外边距的塌陷

(1)问题:

对于两个嵌套关系(父子关系)的块元素,父元素有上外边距同时子元素也有上外边距,此时父元素会塌陷较大的外边距值(谁大塌陷谁)。

(2)方法:

可以为父元素添加overflow: hidden;
可以为父元素定义上内边距padding-top;
可以为父元素定义上边框。
还有其他方法,比如浮动、固定,绝对定位的盒子不会有塌陷问题。

5,清除内外边距

(1)问题:

网页元素很多带有默认的内外边距,而且不同浏览器默认的也不一致。因此要清除下网页元素的内外边距。

(2)方法:

   * {
           padding: 0;    /*清除内边距*/
           margin: 0;      /*清除外边距*/
       }

(3)注意:

行内元素为了照顾兼容性,尽量只设置左右内外边距,不要设置上下内外边距。但是转换为块元素或者行内块元素就可以设置。

6,清除列表项的项目符号

(1)问题:

去掉li前面的项目符号(小圆点)

(2)方法:

  list-style: none;

九,圆角边框,盒子阴影和文字阴影

1,圆角边框

(1)含义:

在CSS3中,新增了圆角边框样式,border-radius属性用于设置元素的外边框圆角。

(2)语法:

  border-radius: length;

(3)属性:

属性作用
border-top-left-radius左上角
border-top-right-radius右上角
border-bottom-right-radius右下角
border-bottom-left-radius左下角

(4)复合属性:

值的个数表达意思
border-radius: 5px1个值,代表四个角都有5像素的圆角边框
border-radius: 5px 10px2个值,代表左上角和右下角是5像素,右上角和左下角是10像素;(对角线)
border-radius: 5px 10px 20px3个值,代表左上角为5像素,右上角和左下角为10像素,右下角为20像素;(对角线)
border-radius: 5px 10px 20px4个值,代表左上角5像素,右上角10像素,右下角20像素,左下角30像素(顺时针)

(5)注意:

1,参数值可以为数值或者百分比形式。
2,如果是正方形,想要设置为一个圆,就把数值修改为高度或者宽度的一半即可,或者直接写为50%。
3,如果是个矩形,设置为高度的一半可以了。

2,盒子阴影

(1)含义:

CSS3中新增了盒子阴影,我们可以使用box-shadow属性为盒子添加阴影。

(2)语法:

box-shadow:   h-shadow  v-shadow ;

(3)属性值:

属性值描述
h-shadow必需。水平阴影的位置。允许负值。
v-shadow必需。垂直阴影的位置。允许负值。
blur可选。模糊距离。
spread可选。阴影大小(尺寸)
color可选。阴影颜色。
inset可选。将外部阴影(outset)改为内部阴影

3,文字阴影

(1)含义:

在CSS3中,可以使用text-shadow属性将阴影应用于文。

(2)语法:

   text-shadow:   h-shadow  v-shadow ;

(3)属性值:

属性值描述
h-shadow必需。水平阴影的位置。允许负值。
v-shadow必需。垂直阴影的位置。允许负值。
blur可选。模糊距离。
color可选。阴影颜色。

以上是关于CSS学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

css学习笔记 4

css 学习笔记 一

VSCode自定义代码片段——CSS选择器

VSCode自定义代码片段——CSS动画

css学习笔记