HTML+CSS阶段知识点梳理

目录

一、简单的网页结构

二、常用标签 

三、列表 

四、CSS引入方式

五、常用选择器 

1、标签(元素)选择器

2、id选择器

3、class选择器

4、通配选择器

5、复合选择器

6、关系选择器

7、属性选择器

8、伪类选择器

9、a元素的伪类

10、伪元素选择器

11、继承

12、选择器的权重

六、元素之间的转换 

七、字体 

字体的样式

字体的分类

字体的其他样式 

八、盒子模型 

1、什么是盒模型

2、影响盒模型大小

3、设置内边距

4、外边距

5、布局

 6、外边距的重叠

7、元素的盒模型

九、浮动

    设置浮动特点

解决高度塌陷的方法

清除浮动 

十、定位

1、开启定位

 2、开启定位后,元素具有特点

开启绝对定位

  开启固定

  开启粘滞定位


一、简单的网页结构

文档声明  告诉浏览器我们写的代码是按照html文档类型来写的,浏览器在编译代码时,也要按照html规范来编译,防止出现怪异模式

 html根标签  一个页面就一个根标签 所有的内容都要写在根标签里面,开始标签和结束标签中间

      

head标签  帮助浏览器编译代码,里面的内容,用户一般看不到 

  

body标签 是书写网页主体内容,用户看到的所有内容, 文字,图片,音视频等等都写在body

 
        有作洪锐领,招承如。

        
        Lorem ipsum dolor sit amet.

 

 title标签:网站的标题  

       可以帮助推广部门进行网站推广,非常重要,一般具体内容都是推广部门来定的

 

    

meta标签是根据其配置的属性和属性值来确定功能, 设置一些元信息

属性和属性值写在开始标签和自标签内部的

            charset属性="charset属性值"

            charset属性  设置字符集

             utf-8      字符集的类型-万国码

                            gb、gbk等

 编码:将汉字图片音视频等等转成二进制的过程

 解码:将二进制又转成汉字图片音视频等

  乱码:编码和解码参考的标准不统一,就会出现乱码

 

二、常用标签 

1、标题标签

    h1-h6

默认样式:字体加粗,从h1-h6,字体是逐步放小,行与行之间的间距比较大,独占一行

语义:表示一个标题

           可以帮助推广部门做推广

           其中h1的语义最重,一般情况下一个页面就一个h1

           常用的是h1-h3

  一级标题

  二级标题

  三级标题

  四级标题

  五级标题

  六级标题

2、段落标签 p

默认样式:行与行之间有间隔,独占一行

语义:表示一个段落

注意:p中间一般只放文本或者图片

3、强调标签

strong   文本加粗强调

em         文本倾斜强调

4、center

语义:使内容居中

默认样式:会独占一行

5、br  强制换行

6、hr  分割线

7、del  删除线     不会独占一行

8、div  没有任何语义的标签,会独占一行

9、span 没有任何语义的标签   不会独占一行

能够用有语义标签的时候一定要用对应的标签

 

三、列表 

将一组一组数据列在一起

1、有序列表

用ol创建   li表示每个列表项

默认样式:默认加项目符号123,列表项前面有一定间距

2、无序列表

用ul创建,li表示每个列表项

默认样式:加项目符号黑心圆,列表项前面有一定间距

3、定义列表

用dl创建,dt表示下定义,dd表示具体内容

注意:1、常用的ul,ol,在实际开发过程中,不会特别区分有序或者无序

           2、ul li;ol  li;dl  dt dd;是相对固定的结构,里面一般情况下不嵌套其他子元素

               3、ul ol li dl dt dd 都是块元素

                4、ul ol 有一个属性 type属性,可以更改项目符号

                ol type 属性

                        可选值:1  默认

                                        A 、a、I、i

                ul type 属性

                        可选值: disc  黑心圆

                                square  实心方块

                                 circle    空心的圆

                5、列表可以相互嵌套使用

                6、列表的默认样式一般情况下,是不需要,后期写样式之前需要去除

四、CSS引入方式

第一种方式:内联样式/行内样式

写在开始标签或者自结束标签内部,写一个style属性,将css样式写在属性值

可以写多组样式,但一定要用;隔开

优点是有针对性

缺点:

1、html结构和css样式耦合了,不好看

2、不好修改

3、使用js不好修改,后期维护也不行

不建议使用

第二种方式:内部样式表

写在head标签内,写一个style标签,在style标签内,通过选择器,选中对应的内容

在{  } 内设置css样式,可以写多组样式,用 ; 隔开

优点: 方便修改

缺点:1、css样式还是写在html文件内部,会导致代码量很多

           2、不方便复用

第三种方式:外部样式表

在html文件的外面新建一个.css文件,在css文件内,选中对应的内容,写css样式

通过在html文件head标签写link标签,引入对应的css文件

或在style标签内,@import  url ( 文件名 .css );

推荐使用

五、常用选择器 

1、标签(元素)选择器

作用:通过对应的标签名选中内容

语法:标签名 {    }

注意:会波及其他的同标签名的内容

2、id选择器

作用:通过id属性值,选中对应的内容

语法:#id属性值 {  }

注意:id属性值不能以数字,汉字开头,而且id属性值不能复用

3、class选择器

作用:通过对应class属性值选中内容,跟id选择器很像,不同的是class属性值可重复使用

       语法:.class属性值

       注意:最常用的选择器

4、通配选择器

作用:选中页面中所有的标签

语法:*{   }

5、复合选择器

1、交集选择器

作用: 同时符合选择器1选择器2···对应的内容

         语法: 选择器1选择器2····{}

         注意:如果选择器中有标签选择器,那么标签选择器必须放在第一位

2、并集选择器(群组选择器)

在选择器1或者选择器2或者····里面的内容

       语法:选择器1,选择器2,····{}  

6、关系选择器

1、子元素选择器

作用:通过指定的父元素找到指定的子元素

语法:父元素 > 子元素 {  }

2、后代元素选择器

作用:通过指定的祖先元素找到指定的后代元素

语法:祖先元素  后代元素 {  }

3、选择下一个兄弟(紧挨着我的)

作用:通过指定的兄弟找到紧挨弟弟

语法: 兄 + 弟 { }

4、选中指定元素下所有的兄弟

语法:兄 ~ 弟{   }

7、属性选择器

语法:[属性名]{} 选择含有指定属性的元素

                           [属性名=属性值]{} 选择含有指定属性和属性值的元素

                           [属性名^=属性值]{} 选择指定属性以指定属性值开头的元素  

                           [属性名$=属性值]{} 选择属性值以指定值结尾的元素

                           [属性名*=属性值]{} 选择属性值含有某值的元素

8、伪类选择器

:first-child      第一个元素

:last-child       最后一个元素

:nth-of-child    选中第几个元素

特殊实参值

2n / even    偶数

2n+1  / odd   奇数

是按照所有子元素的排列顺序

:first-of-type       第一个元素

:last-of-type         最后一个元素

:nth-of-type( )  选中第几个元素

特殊实参值

2n / even    偶数

2n+1  / odd   奇数

是按照同类型的子元素排序

9、a元素的伪类

1、:link  用来表示未访问过的链接(正常链接)

2、:visited 用来表示访问过的链接

 由于隐私的原因,所以visited只能改颜色

注意::link,:visited  是超链接独有的

3、:hover 用来表示鼠标移入的状态

4、:active  鼠标点击后的状态

:hover :active 适用所有的标签

10、伪元素选择器

伪元素,表示页面中一些特殊的并不真实存在的元素(元素的位置)

          ::first-letter  表示第一个字母

          ::first-line  表示第一行

          ::selection  选中的内容

          ::before  元素的开始位置

          ::after   元素的结束位置

               before和after必须要结合content使用

11、继承

 /* 共同的祖先元素,设置统一的字体大小 */

      body{

        /* 字体的颜色、字体的大小、行高、字体 */

      }

    

   样式的继承(继承祖先的资产)

            定义:为一个元素设置的样式,同时也会应用到它的后代元素上

            优势:方便我们开发,讲一些通用的样式统一设置到共同的祖先元素上,

                  子元素的样式都可以获取到样式

            注意:并不是所有的样式都会被继承,比如:背景相关的,布局相关等不会被继承

          

12、选择器的权重

样式冲突  通过不同的选择器选中同一个元素,进行一样的样式设定

         发生样式冲突时,应用哪一个样式由选择器的权重(优先级)决定

器的权重:

内联样式          1000

id选择器 100

类选择器(包括伪类选择器) 10

标签选择器 1

通配选择器 0

继承的样式 没有权重

注意:      1、当选择器的权重相同的时候,谁靠下就使用谁

2、多个选择器共同使用,则最终权重是多个选择器权重相加

3、如果选择器是并集选,则选择器的权重是各算各的

4、选择器的权重再累加,也不会超过它的上一级

5、!important  权重最高   写在属性值的后面,中间用空格隔开  后面是分号

慎用:

一般情况在修改框架样式的时候使用

确认是否是选择器权重问题bug的时候

如果设置样式没有生效,要么是没选中,要么是权重的问题,可以用!important来做区分

六、元素之间的转换 

display样式名

可选值:

block    将元素转成块元素

inline   将元素转成行内元素

inline-block  将元素转成行内块元素

none   将元素隐藏

flex  弹性盒子

table  表格

注意:最好不要经常转换

设置外边距     margin:0;

设置内边距     padding:0;

去除项目符号   list-style:none;

去掉下划线      text-decoration:none;

七、字体 

字体的样式

1:color   设置字体颜色,也可以设置其他颜色

2:font-size

3:font-family可以指定文字的字体

4:@font-face