HTML和CSS
HTML表示内容的结构 超文本标记语言(Hyper Text Markup Language)
CSS则决定结构的样式 层叠样式表 (Cascading Style Sheet)
解析与渲染
解析 :输入的内容使计算机能够读懂
渲染 :使解析的内容通过浏览器转化为用户能够明白的内容
元素的组成部分
元素的组成的部分:开始标签/元素内容/结束标签
标签称为元素 标签
属性分为属性值和属性内容 属性包含在开始标签里面
空元素:没有元素内容与结束标签的元素 也叫自闭和元素 (img)
元素的三种层次关系 :父子关系 兄弟关系 祖先后代关系
语义化标签
与div没有本质上的区别 都是用来划分区域 只是拥有自己的含义
header:页面的头部
nav:导航
article:文章的主题内容
aside:文章的附加内容 (广告)
footer:页面的底部
section 表示页面一个整体的一部分主题

解码器 字符的编码集

viewpot 视口(可视化窗口)

乱序明文 lorem数量 用于生成乱码

p标签不能成为P元素的父元素 也不能包含标题(h)和语义化标签(div)

DOCTYPE html告诉浏览器适用什么版本的浏览器打开 必须在第一行
charset 告诉浏览器以什么什么方式来解析文本

超链接

锚点:同一个页面之间的相互跳转

用ID选择器实现

功能链接:邮件a href=“mailto:2905764944@qq.com”>给我发邮件

​ 电话a href=“tel:123543546”>给我发邮件

新建页面 target=“_blank ”

不新建页面且替换当前页面 target=“_self”

返回顶部a href="#“

外部样式优点:复用 批量修改

绝对路径:

当网站部署到服务器后,网站中的所有资源都可以通过一个地址(路径)访问

书写格式:协议://域名/目录

适用场景:访问外部资源 只能适用绝对路径

​ 访问内部资源 :若网站已经部署到服务器 可以使用绝对路径 ,并可以省略协议和域名

相对路径 相对于当前资源的位置 只能用于访问站内资源

书写格式: ./路径

./表示当前资源所在的目录,必须作为相对路径的开始,可省略

…/表示返回上一级目录

文本元素

1个汉字=2个字符=4个字节

blockquote: 整段的引用(整段缩进)

q:小段文本的引用(自带引号)

cite:对参考文献的引用(标签:1.文献的引用《自带斜体》2.搜索引擎可以识别内容来自于哪里。

​ 属性:1.属性值不会显示到页面 2.普通浏览器不识别 3.阅读浏览器能识别 告知来自于哪里)

abbr:对缩写的引用(鼠标放在缩写的内容上能显示自己输入的全称)

strong:重要的文本

b:应突出显示的文本

em:强调的文本 (斜体)

i:应区别对待的文本

strong和b的区别(都是加粗) 区别:1普通浏览器上不识别 2阅读浏览器能识别 会加重strong的读音 3 搜索引擎会可以识别strong(增加元素的权重)

em和i的区别:1普通浏览器上不识别 2阅读浏览器能识别 会加重em的读音 3 搜索引擎会可以识别em(增加元素的权重)

快速选择所有要修改的元素:双击元素名并Ctrl+D

​ 批量修改快捷键:ctrl+d

​ 批量复制(内容不同):

​ 选中要复制的内容(多个)alt+双击(选择)

​ 复制快捷键:ctrl+c

​ 粘贴快捷键:ctrl+v

​ 全选快捷键:ctrl+a

​ 撤销快捷键:ctrl+z

​ 剪切快捷键:ctrl+x

无语义标签

div 无语义 用于表示一块区域

span 无语义 仅用于给一小段文本添加样式 在一行内显示

pre 预格式化 保留文字在源代码中的格式 适用场景 数学和化学的公式

实体字符

​ 空白折叠:在HTML代码中,多个空格和回车会合并成一个空格。

​ 如何实现多个空格?

​ 解决方式:实体字符

​ 书写格式:&开始 分号结束

字符的书写格式 &实体名字 或&实体编号

显示结果 描述 实体名称 实体编号

​ 空格 &nbsp &#160

< 小于符号 &lt &#60

》 大于符号 &gt &#62

& 并且符号 &amp &#38

© 版权符号 &copy &#169

引用CSS

4种样式

使用外部样式表

使用内部样式表

使用行内(内嵌)样式表

使用外部样式表的特点

1 实现了内容结构和表现形式代码分离,方便复用和维护

2 使HTML代码更加明净,有利于程序员和搜索引擎的阅读

3 是开发页面的常见做法

使用内部样式表的特点

将CSS代码写到html文档的style元素当中

适用场景:测试时使用

1 没有了样式表文件 在某些时候可以提升效率

2 多个页面难以共享样式 不利于代码复用

3 html&css代码复杂 不利于程序员和搜索引擎阅读

4 在某些对效率要求苛刻或测试的场景下使用

使用行内样式表的特点

CSS代码写在某个元素开始标记的style属性中 行内样式不写选择器

1 JavaScript操作的是行内样式

2 在测试的场景下使用

3 没有了样式表文件 在某些时候可以提升效率

4 多个页面难以共享样式 不利于代码复用

5 html&css代码复杂 不利于程序员和搜索引擎阅读

mark标签 给文本加背景颜色

CSS术语

CSS规则 选择器{声明块}

CSS选择器

选择器选中的都是离{}最近的元素 前面的内容都是这个元素的条件

基本选择器

1 元素选择器 书写格式 元素名{声明块}

2 通配符选择器 书写格式: * {声明块} 例子:*{color:red;}

​ 效果:*号匹配0到多个字母

3 类选择器 书写格式:.类名{声明块} 类名匹配html标签中class的属性值

4 id选择器 (留给JS使用 权重高) #id名{声明块} id名与html标签中的id属性值相匹配

​ 注:一个页面id值不可以重复

5 组合选择器(并集选择器) 书写格式 :类名,元素名,id名{声明块}

命名规范(使用范围{id,类名})

1 不要以数字开头

2 包含的字符(字母,数字,下划线,连字符)

3 区分大小写(大小写敏感)

层次选择器

1 子集选择器 书写格式:父元素>子元素{声明块}

2 后代选择器 书写格式:祖先元素+空格+后代元素{声明块}

3 兄弟选择器 书写格式:兄弟元素+“+”或者“~”+兄弟元素{声明块}

​ 兄弟元素1+兄弟元素{声明块}只选中紧挨兄弟元素1后面的第一个兄弟元素(相邻选择器)

​ 兄弟元素1~兄弟元素{声明块}选中兄弟元素1后的所有兄弟元素

伪类选择器

​ n从0开始

1 选中第N个元素 书写格式:元素:nth-child(n){声明块} n是第几个元素

​ 例子:p:nth-child(3){ color:red;} ()适用场景:所有兄弟元素的名字相同

​ 注:若所有兄弟元素的名字不相同,可能会无法选中元素

​ 方式2:书写格式: 元素:nth-of-type(n){声明块}

​ 适用场景:所有兄弟元素名可以不相同

​ 注:先筛选类型,在结果中选中第N个元素

2 选中第一个元素 书写格式: 元素:first-child{声明块}

3 选中最后一个元素 书写格式:元素 :last-child{声明块}

4 选中奇数项元素 书写格式:元素:nth-child(odd){声明块} :元素nth-child(2n+1){声明块}

5 选中偶数项元素 书写格式:元素:nth-child(even){声明块} :元素nth-child(2n){声明块}

否定伪类选择器

除了第N个元素 :书写格式: 元素:not(:nth-child(n)){声明块}

除了多个元素:书写格式: 元素:not(:nth-child(n),:nth-child(n)){声明块} n为需要除去的元素

扩展

选中前m个元素 书写格式: 元素:nth-child(-n+m)

动态伪类选择器

a标签4种状态(按顺序进行书写)

1 未访问:link

2 已访问:visited

3 激活(焦点框):focus

4 悬停(移入):hover

5 点击:active

书写顺序:A方案:1245 B方案:2145

盒模型概述

盒子的分类

ie盒模型

普通盒模型

区别:当设置元素的宽高的时候计算规则不同

普通盒模型设置宽高时只给内容盒设置

ie盒模型设置宽高时是给边框盒设置

不同元素产生的盒子类型可能不同

box-sizing: 设置盒子的计算规则;

content-box 默认值 普通盒模型 标准盒模型

border-box 改为ie盒模型

适用场景:当宽度为100%的基础上 有添加了其他子盒子的尺寸 出现超出的情况下 更改盒子的计算规则来实现横向内容全部展示

一个元素,产生什么样的盒子,取决于他的displa属性

display:none 不生成盒子(标签有 页面不显示)

display:inline 行盒(多个标签可以在一行显示)

display:block 块盒 (一个标签独占一行)

背景色渲染区域包括边框+内边距+内容区域

padding的取值

1个值表示四个方向值相同

《padding的缩写方式》

padding:10px 上下左右

padding:10px 20px; 上下,左右

padding:10px 30px 20px 上,左右,下

padding:10px 20px 30px 40px 上,右,下,左

《margin的缩写方式》

margin:10px 上下左右

margin:10px 20px; 上下,左右

margin:10px 30px 20px 上,左右,下

margin:10px 20px 30px 40px 上,右,下,左

盒模型当中只有外边距可以给负值

《border样式》

style

soild 实线

dashed 虚线

dotted 点线

double 双实线

border-radius:10px 圆角边框

border-radius:10px 上下左右

border-radius:10px 20px 左上右下,右上左下

border-radius:10px/20px Y轴为10px X轴为20px

透明色:transparent

边框的颜色与文本的颜色相同

边框的默认大小为3px(双实线)

@import只能引用css文件 link可以引用其他文件

宽高

宽高默认值为auto

最小宽度:min-width

最大宽度:max-width

最小高度:min-height

最大高度:max-height

当内容超出设置的尺寸时内容的展示方式

overflow:hidden 隐藏超出部分的内容(只显示填充盒区域的内容)

overflow:scroll 添加滚动条(两个方向都会添加)

overflow-y:scroll 添加纵向滚动条

overflow:visible 显示超出部分内容(默认值)

overflow:auto 超出内容方向添加滚动条

字体加粗:font-weight

文本的断词规则(换行)

英文,数字的断词规则是空格和标点符号

中文的断词规则是空格和标点符号

改变断词规则

word-break:break all 不按断词规则但是固定宽度占满后还是会换行

word-break:normal 默认断词规则

用css实现单行省略号和多行省略号

子盒子

border-box:边框盒 包含边框(border) 内边距(padding) 内容(content)

padding-box:填充盒 包含内边距(padding) 内容(content)

content-box:内容盒 包含内容(content)

url:统一资源路径

设置背景的起始渲染区域,格式:

background-origin:padding-box【从填充盒左上角开始渲染】

background-origin:border-box【从边框盒左上角开始渲染】

background-origin:content-box【从内容盒左上角开始渲染】

设置背景的显示区域,格式

background-clip:border-box【从边框盒开始显示】

background-clip:padding-box【从填充盒开始显示】

background-clip:content-box【从内容盒开始显示】

outline(轮廓)

优点:不占像素

缺点:不可以单独设置四个方向边框的样式 四个方向的样式一致

继承和层叠

什么是继承

继承(inherit)是指子元素会自动拥有父元素的某些css属性

可继承属性:文本类(文字 标点符号能添加的样式) 字体类

继承必须有传递性

继承发生的场景

一个元素的某个CSS属性 只有满足下面两个条件 才会继承父元素

1 该属性是可继承的属性

2 该属性样式表中没有声明

强制继承

强制继承 也叫做显示继承 是指将CSS属性设置为inherit

这样做 通常有两个原因

1 为了继承有些不可继承的属性

2 为了继承已被声明过的属性

单位

em是所在标签的字体大小的倍数

rem是相对于根元素(html)字体大小的倍数

rem适用场景:1 移动端开发

vw(viewpointwidth)vh(viewpointheight):取视口的百分比 列子 :width:5vw (取视口的百分之5)

取值单位的分类

1 固定单位,绝对单位:px

2 相对单位:em rem vw vh %

层叠概述

什么是层叠

当相同属性名不同属性值应用到同一个元素当中就会发生声明冲突 浏览器会自动触发层叠机制

层叠的过程
1 比较优先级

优先级与来源和重要性有关

来源:开发者样式表 浏览器默认样式表 用户样式表 其中用户样式表优先级最高 浏览器默认样式表优先级最低

重要性:若属性值后有( !important),则表示一条重要声明,否则,表示普通声明

2 比较特殊属性

每一个声明都有一个特殊性(specificity)

一个声明的特殊性,取决于规则适用范围的大小

规则适用范围越大,特殊性越低,适用范围越小,特殊性越高

行内样式》id选择器》类选择器》》伪类选择器元素选择器》通配符选择器(特殊性从高到低)

具体规则

在比较特殊性时,每一个冲突的声明,会生成4个数字abcd 以比较特殊性

a越大 特殊性越高 若a相同 比较b

a:若声明是行内样式 则为1 否则为0

b:规则中id选择器的个数

c:规则中类选择器,伪类选择器和属性选择器的个数

d:规则中元素选择器,伪元素选择器的个数

3 比较源次序

2021-03-21相关推荐

  1. 训练日记 | 2021.03.21 | 天梯赛选拔赛

    选拔赛用的是 第十八届浙大城院程设竞赛 A - Genshin and KFC 直接输出 B - Codeforces 题意:判断段位有没有改变,如果有就输出"(原段位 to 现段位)&qu ...

  2. 2021.03.30【2021省赛】模拟 比赛总结

    2021.03.30[2021省赛]模拟 比赛总结 地址: https://gmoj.net/senior/#contest/home/3350 T1: 神奇纸牌(uno) T2: 凌乱平衡树 (tr ...

  3. 2021.8.21 网易秋招开发笔试(题目 + java代码)

    2021.8.21 网易秋招开发笔试 一.题目: 二.程序 //采用的是深度优先搜索 import java.util.HashMap;public class wangyi {public stat ...

  4. Go、Rust、C++和Zig语言的生产力对比 | Gopher Daily (2021.03.28) ʕ◔ϖ◔ʔ

    每日一谚:Goroutines and channels are big ideas. They're tools for program construction. Go技术生态 掉入Go nil坑 ...

  5. 2021.03.17 pokémon小游戏开发记录与周总结

    2021.03.17 pokémon小游戏开发记录与周总结 此篇仅包含部分项目代码,只是个人的学习总结. 文章目录 2021.03.17 pokémon小游戏开发记录与周总结 前言 一.前期准备 二. ...

  6. 2022.03.21飞扬的小鸟

    2022.03.21飞扬的小鸟 (题目来源:https://www.luogu.com.cn/problem/P1941 ) 题目描述 Flappy Bird 是一款风靡一时的休闲手机游戏.玩家需要不 ...

  7. 2021.03青少年软件编程(Python)等级考试试卷(二级)

    2021.03青少年软件编程(Python)等级考试试卷(二级) 一.单选题(共25题,共50分) 1.对于字典infor = {"name":"tom", & ...

  8. 2021.1.21课程摘要(逻辑教育-王劲胜)

    2021.1.21课程摘要 逻辑教育-13期-Python基础班-王劲胜 一.字符串 二.运算符 三.作业讲解 逻辑教育-13期-Python基础班-王劲胜 一.字符串 1.字符串的方法 • len( ...

  9. 2021.03.24正则匹配符号

    2021.03.24 正则表达式 from re import fullmatch 正则是一种用来处理文本数据的一种工具.(一般用于处理复杂的文本问题) 1)检测输入的数据是否是手机号? 2)检查输入 ...

  10. 2021.1.21——星露谷作物计算器的可视化

    2021.1.21--星露谷作物计算器的可视化 前言 目标 excel表格 代码 效果图 总结 前言 书承上文,之前做的计算器,仅仅是在调用excel里的数据,生成图表并放回到excel表里,每次要查 ...

最新文章

  1. Markdown编辑器的使用方法
  2. loj2538 「PKUWC2018」Slay the Spire 【dp】
  3. C#只用属性来解决兔子,不用方法和循环
  4. 光学定位与追踪技术_如何为射线光学仿真创建复杂的透镜几何结构
  5. matlab 的cat函数
  6. html属性可以用来定义内联样式,18年6月考试《网页设计与制作》期末大作业.doc...
  7. 前端学习(2146):vue中TypeError: this.getResolve is not a function
  8. 结构与算法(02):队列和栈结构
  9. C++表白代码--Beating heart
  10. 更改tomcat的根目录路径
  11. apache配置防盗链
  12. 小程序入门学习05--幻灯片、页面生命周期
  13. feign post 传递空值_别再问 GET 和 POST 有什么不同了
  14. 正态分布的前世今生:最小二乘法
  15. php中文制作,php中文验证码制作教程
  16. max的标准库头文件 c语言,float.h - C语言标准库
  17. 怎样预防电脑辐射脱发
  18. 如何解决算百分比,加起来不是100%的问题
  19. 小米更新显示非官方rom_小米红米手机ROOT后支付宝提示“支持环境风险”+TWRP_recovery刷机出现ZIP刷机包前面校验失败...
  20. 计算机手动配置信息,手动修改并设置电脑开机画面入您所愿

热门文章

  1. 爱上开源之Boot4go-etcdv3-browser之剧透篇
  2. java分页打印_谷歌Chrome打印分页
  3. AutoCAD二次开发:ObjectArx下的两种命令注册方式
  4. Model-Agnostic Meta-Learning (MAML) 理解
  5. 计算机考试excel统计图怎么做,excel表格取数据做统计图-Excel如何制作统计数据...
  6. 怎么关闭win10虚拟机服务器,大神为你win10系统彻底关闭退出vmware虚拟机的方案...
  7. 1110 - 好像事情没我想的那么糟
  8. 关于自动化运维的那些事儿
  9. 清华大学计算机系女生人数,2013年清华大学在各省市录取人数及男女比例
  10. 唯一能够胜过对手的,只有你的学习能力