一、基础认知

1.1 认识网页

网页的组成: 文字、图片、音频、视频、超链接

网页背后的本质:前端程序员写的代码

前端的代码通过什么软件转换成用户眼中的页面:浏览器转化(解析和渲染)

1.2 5大浏览器

浏览器:时网页显示、运行的平台、时前端开发必备利器

常见的五大浏览器:

  • IE浏览器、火狐浏览器(Firefox)、谷歌浏览器(Chrome)、Safari浏览器、欧鹏浏览器(Opera)

浏览器市场份额

​编辑​编辑

1.3 渲染引擎

渲染引擎(浏览器内核):浏览器中专门对代码进行解析渲染的部分

浏览器出品的公司不同,内在的渲染引擎也是不同的:

浏览器  内核 备注
IE Tident IE、猎豹安全、360极速浏览器、百度浏览器
FireFox Gecko 火狐浏览器内核
Safari Webkit 苹果浏览器内核
Chrome / Opera Blink Blink 其实是 Webkit 的分支

注意点:

  • 渲染引擎不同,导致解析相同代码时的 速度、性能、效果也不同的
  • 谷歌浏览器的渲染引擎速度快、性能高、效果好、所以更吸引用户的喜爱(推荐)

1.4 为什么需要Web标准

不同浏览器的渲染引擎不同,对于相同代码解析的效果会存在差异

  • 如果用户想看一个网页,结果用不同浏览器打开效果不同,用户体验极差!

Web标准:让不同的浏览器按照相同的标准显示结果,让展示的效果统一!

​编辑

1.5 Web标准中分成三个构成

构成 语言 说明
结构 HTML 页面元素和内容
表现 CSS 网页元素的外观和位置等页面样式(如:颜色、大小等)
行为 JavaScript 网页模型的定义与页面交互

1.6 Web标准的记忆方法

Web标准要求页面实现:结构、表现、行为三层分离

​编辑

二、HTML标签

2.1、 基本结构 标签

标签名 定义 说明
<html></html> HTML标签 页面中最大的标签,我们称为根标签
<head></head> 文档的头部 注意在head标签中我们必须要设置的标签时title
<title></title> 文档的标题 让页面拥有一个属于自己的网页标题
<body></body> 文档的主体 元素包含文档的所有内容,页面内容基本都是放到body里面的

1. HTML 标签是由尖括号包围的关键词,例如 <html>

2. HTML 标签通常时成对出现的,例如 <html> 和 </html>,我们称为双标签。

一对标签中,第一个标签是开始标签,第二个标签是结束标签。

3. 有些特殊的标签必须是单个标签(极少情况),例如 <br />,我们称为单标签。


<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Document</title>

</head>

<body>

</body>

</html>

2.2、 文档类型声明标签

  • <!DOCTYPE html> 文档声明类型,作用就是告诉浏览器使用那种HTML版本来显示网页
<!DOCTYPE html>

  • 这句代码的意思是:当前页面采取的是 HTML5 版本来显示网页
  • 注意:
  • <!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前
  • <!DOCTYPE> 不是一个 HTML 标签,它就是文档类型声明标签

2.3、 lang语言种类

用来定义当前文档显示的语言

  • en 定义语言为英语
  • zh-CN 定义语言为中文
<html lang="en">

2.4、 字符集

在 <head> 标签内,可以通过 <meta> 标签的 charset 属性来规定 HTML 文档应该使用那种字符编码

<meta charset="UTF-8">

  • charset 常用的值有:GB2312、BIG5、GBK 和 UTF-8,其中 UTF-8 被称为万国码,基本包含了全世界所有国家需要用到的字符

三、 标签

3.1、 标题标签


<body>

<h1> 一级标题</h1>

<h2> 二级标题</h2>

<h3> 三级标题</h3>

<h4> 四级标题</h4>

<h5> 五级标题</h5>

<h6> 六级标题</h6>

</body>

  • 加了标题的文字会变的加粗,字号也会以此变大
  • 一个标题独占一行

3.2、段落标签

<p>段落标签</p>

  • paragraph 的缩写
  • 文本在一个段落这种会根据浏览器窗口的大小进行自动换行
  • 段落和段落之间保有空隙

3.3、 换行标签

<br />

  • <br /> 是个单标签
  • <br /> 标签只是简单的开始新的一行,跟段落不一样,段落之间会插入一些垂直的间距

3.4、 文本格式化标签

  • 为文字设置粗体、斜体、下划线等效果
语义 标签
加粗 <strong></stroung>
倾斜

<em><em>

删除线 <del></del>
下划线 <ins></ins>
  • 重点记忆 加粗 和 倾斜

3.5、 盒子标签

  • <div></div>: 一行只能放一个大盒子
  • <span></span>: 一行可以放多个小盒子

  1. <div>这是头部</div>

  2. <span>今日价格</span>

3.6、图像标签

<img src="pink1.jpg" alt="我" title"我" />

  • src 是 <img> 标签的必须属性,它用于指定图像文件的路径和文件
属性 属性值 说明
src 图片路径 必须属性
alt 文本 替换文本(当图片不能显示的时候显示文字)
title 文本 提示文本(鼠标放到图像上,显示的文字)

3.7、路径

3.7.1、 相对路径

相对路径分类 符号 说明
 同一级路径   图形文件位于 HTML 文件同一级 如 <img src="1.png">
 下一级路径 / 图形文件位于 HTML 文件下一级 如 <img src="data:images/1.png">
上一级路径 ../ 图形文件位于 HTML 文件上一级 如 <img src="../1.png">

3.7.2、绝对路径

  • 绝对路径:是指目录下的绝对位置,直接达到目标位置,通常是从盘符开始的路径

3.8、 超链接标签

<a href="跳转目标" target="目标窗口的弹出方式">文本或图像</a>

属性 作用
href 用于指定链接目标的url地址。必须属性
target 用于指定连接页面的打开方式。_self 为默认值, _blank 为在新窗口中打开
  • 如果 href 里面地址是一个文件夹或者压缩包,会下载这个文件
<a href="img.zip"></a>

3.9、 锚点链接

作用:点击链接,可以快速定位到页面中的某个位置

  • 在链接文本的 href 属性中,设置属性值为 #名字
  • 找到目标位置标签,里面添加一个 id属性=刚才的名字

<a href = "#two">111</a>

<h3 id = "two">牛</h3>

3.10、 注释

注释快捷键为 ctrl + /

注释以 <!-- 开始 以 --> 结束

<!-- 注释语句 -->

3.11、 特殊字符

特殊字符 描述 字符的代码
  空格符 &nbsp;
< 小于号 &lt;
> 大于号 &gt;
& 和号 &amp;
人民币 &yen;
版权 &copy;
注册商标 &reg;
摄氏度 &deg;
± 正负号 &plusmn;
× 乘号 &times;
除号 &divide;
² 平方2(上标2) &sup2;
³ 平方3(上标3) &sup3;

重点记住:空格、大于号、小于号 这三个,其余的使用的很少,如果需要使用回头查阅即可

3.12、 表格标签

  • table 用来定义表格的标签
  • tr 用来定义表格中的行,必须嵌套在 <table></table> 标签中
  • td 用来定义表格中的单元格,必须嵌套在 <tr></tr> 标签中
  • th 用来定义表格中的表头,表头单元格里面的内容加粗居中显示

<body>

<table>

<tr> <th>姓名</th> <th>性别</th> <th>年龄</th> </tr>

<tr> <td>beibei</td> <td>男</td> <td>21</td> </tr>

<tr> <td>beibei</td> <td>男</td> <td>21</td> </tr>

<tr> <td>beibei</td> <td>男</td> <td>21</td> </tr>

</table>

</body>

3.12.1、 表格属性

表格标签的属性实际开发并不常用,因为基本都是通过后面的CSS来设置的

属性名 属性值 描述
align left,center,right 规定表格相对周围元素的对齐方式
border 1或者" " 规定表格单元是否拥有边框,默认为" ",表示没有边框
cellpadding 像素值 规定单元边沿于其内容之间的空白,默认1像素
cellspacing 像素值 规定单元格之间的空白,默认2像素
width 像素值或百分比 规定表格的宽度
<table alian=center border="1" cellpadding="20" cellspacing="0" width="500">

3.12.2、 表格结构标签

为了更好的表示表格的语义,可以将表格分割成 表格头部 和表格主体两个部分

  • 用 <thead></thead> 标签表示表格的头部区域, <thead> 内部必须拥有 <tr> 标签,一般是位于第一行
  • 用 <tbody></tbody> 标签表示表格的主体区域,主要是用于放数据本体
  • 以上标签都是放在 <table></table> 标签中

​编辑

3.12.3、 合并单元格

  • 跨行合并:rowspan="合并单元格的个数"
  • 跨列合并:colspan="合并单元格的个数"
<tb colspan = "2"></td>

3.13、 列表标签

无序列表:<ul>

有序列表:<ol>

最定义列表:<dl>

标签名 定义 说明
<ul></ul> 无序列表 里面只能包含li,没有顺序,li里面可以包含任何标签
<ol></ol> 有序列表 里面只能包含li,有顺序
<dl></dl> 自定义列表 里面只能包含dt和dd,dt和dd里面可以放任何标签

<dl>

<dt>关注我们</dt>

<dd>新浪微博</dd>

<dd>联系我们</dd>

</dl>

3.14、 表单标签

一个完整的表单通常由表单域,表单控件(表单元素)和提示信息3部分组成

​编辑

3.14.1、表单域

  • 表单域是一个包含表单元素的区域
  • <form></form> 标签用于定义表单域,会把它范围内的表单元素信息提交给服务器
属性 属性值 作用
action url地址 用于指定接收并处理表单数据的服务器程序的url地址
method get/post 用于设置表单数据的提交方式,其取值为get或post
name 名称 用于指定表单的名称,以区分同一个页面中的多个表单域
<form action="url地址" method="提交方式" name="表单域的名称">

</form>

3.14.2、 表单控件(表单元素)

①input输入表单元素

  • input 输入表单元素
  • input 是个单标签, type 属性设置不同的属性用来指定不同的控件类型(文本字段、复选框、单选框、按钮等)

type 属性的属性值及描述如下:

属性值 描述
button 定义可点击按钮(多数情况下,用于通过JavaScript启动脚本)
checkbox 定义复选框
file 定义输入字段和"浏览"按钮,供文件上传
hidden 定义隐藏的输入字段
image 定义图像形式的提交按钮
passwprd 定义密码字段。该字段中的字符被掩码
radio 定义单选按钮
reset 定义重置按钮。重置按钮会清楚表单中的所有数据
submit 定义提交按钮。提交按钮会把表单数据发送到服务器
text 定义单行的输入字段,用户可在其中输入文本,默认宽度为 20 个字符

除 type 属性外,<input> 标签还有很多其他很多属性,其常用属性如下:

属性 属性值 描述
name 由用户自定义 定义 input 元素的名称
value 由用户自定义 规定 input 元素的值
checked checked 规定此 input 元素首次加载时应当被选中
maxlength 正整数 规定输入字段中字符的最大长度
  • name 和 value 是每个表单元素都有的属性值,主要给后端人员使用
  • name 是表单元素的名字,要求 单选框和复选框要有相同的name值
  • checked 属性主要针对于单选框和复选框,主要作用是打开页面,就可以默认选中某个表单元素

②文本框与密码框

  • type 属性设置为 text 是文本框
  • type 属性设置为 password 是密码框

<body>

<form>

用户名: <input type="text"> <br />

密码: <input type="password">

</fotm>

</body>

③单选框和复选框

  • type 属性设置为 radio 是单选框
  • type 属性设置为 checkbox 是复选框
  • name 是表单元素的名字,要求 单选框和复选框要有相同的name值

<form>

用户名:<input type="text"><br />

密码:<input type="password"> <br />

<!-- radio是单选框,可以多选一 -->

性别: 男<input type="radio"> 女 <input type="radio">

<!-- checkbox是多选框,可以多选 -->

爱好: 吃饭<input type="checkbox"> 睡觉<input type="checkbox"> 打游戏<inputtype="checkbox">

</form>

④name和value属性

  • name属性:当前input表单的名字,后台可以通过这个name属性找到这个表单,name的主要作用就是用于区别不同的表单
<form>

用户名:<input type="text" value="请输入用户名"><br /> 密码:<input type="password"> <br />

<!-- radio是单选框,可以多选一 -->

<!-- name是表单元素的名字,这里的性别单选按钮必须有相同的名字name,才能实现多选一 -->

性别: 男<input type="radio" name="sex" value="男"> 女 <input type="radio" name="sex" value="女">

<!-- checkbox是多选框,可以多选 -->

爱好: 吃饭<input type="checkbox" name="habby" value="吃饭"> 睡觉<input type="checkbox" name="habby" value="睡觉"> 打游戏<input type="checkbox" name="habby" value="打游戏">

</form>

  • 注意:单选框和复选框name必须一致,value可以不一样

⑤checked和maxlength

  • 单选按钮和复选框可以设置cheked 属性
  • 当页面打开的时候就可以默认选中这个按钮
  • 单选框只能给其中一个加checked,复选框可以多加
性别: 男<input type="radio" name="sex" value="男" checked="checked"> 女 <input type="radio" name="sex" value="女">

  • maxlength:规定最多输入多少个字符

⑥submit和reset

  • type 属性设置为submit:提交按钮会把表单数据发送到服务器
  • type 属性设置为 reset:重置按钮会清楚表单中的所有数据

⑦button和文件域

  • type 属性设置为button:是一个按钮
  • type 属性设置为file:是一个文件域,可以上传文件

<input type="button" value="获取短信验证码"> <br />

<!-- 文件域: 上传文件使用的 -->

上传头像: <input type="file">

⑧label

  • label 标签用于绑定一个表单元素,当点击 <lable> 标签内的文本时,浏览器就会自动将焦点(光标)转到表单元素上,用来增加用户体验
  • label 标签的 for属性 应当与相关的 id 属性相同
<lable for="sex"> 男 </lable>

<input type="radio" name="sex" id="sex">

3.14.3、 select下拉表单元素

  • 下拉表单元素
  • <select> 中至少包含一对 <option>
  • 在 <option> 中定义 selected="selected" 时,当前项即为默认选中项

<select>

<option selected="selected">选项1</option>

<option>选项2</option>

<option>选项3</option>

...

</select>

13.14.4、 textarea 文本域元素

  • 用于定义多行文本输入的控件
<textarea>

文本内容

</textarea>

  • cols = "每行中的字符数",rows = "显示的函数",我们在实际开发中不会使用,都是用CSS来改变大小

3.15、 表单元素总结

表单元素我们学了三大组

  • input 输入表单元素
  • select 下拉表单元素
  • textarea 文本域表单元素

这三组表单元素都应该包含在 form 表单域里面,并且有 name 属性

2022-7-9 html 第七组 刘昀航的更多相关文章

  1. 2022-7-12 javascript(2) 第七组 刘昀航

    @ 目录 2022-7-12学习 第七组 刘昀航 前情提要 一.for循环 二.for in循环 三.while 和 do...while循环 1.while do... while 四.内置函数 五 ...

  2. 2022-7-14 java_2 第七组 刘昀航

    @ 目录 一.java约定规范 1.关于建包 2.控制台输入(Scanner) 关于Scanner的bug 计算器小练习: 二. 1.数组 建立数组的三种方式: 数据类型的初始值: 2.二维数组 使用 ...

  3. 2022-7-13 java_1 第七组 刘昀航

    @ 目录 前言 一.一些基本的指令 二.java 1.java的三个版本 2.java特点 3.运行一个java程序 三.java的数据类型 1.java基本数据类型 2.强制转换的原理 3.八种基本 ...

  4. 2022-7-10 css 第七组 刘昀航

    ​ 样式通常存储在样式表中(先定义样式表),再把样式表添加到html元素中 定义CSS样式的方式: 行内样式(内联样式) ​ ·行内样式仅针对当前标签生效,如果当前的样式不需要复用,可以用行内样式 · ...

  5. 2022-7-11 javascript学习 第七组 刘昀航

    ​ JavaScript是什么? 编程语言,脚本语言,依赖于某种容器来运行. JS是运行在浏览器上的,可以帮助我们去控制页面. Vue.js   react.js    jquery.js    an ...

  6. 第07周-集合与GUI

    1. 本周作业简评与建议 本周8分以上的同学有32人(占1/4),其中9分以上的同学有13人(占1/10).大作业未完成的最高评分一般高于6分.被认定为抄袭的为-10分.请大家认真完成大作业,后面每周 ...

  7. 第06周-接口、内部类与Swing

    1. 本周作业简评与建议 作业简评 Q1.覆盖clone需要:a.要implements标记接口 Cloneable接口.b.要区分浅拷贝与深拷贝.c.一般来说要调用super.clone,然后在此基 ...

  8. 第03周-Java作业评价

    1.作业存在的问题 几大扣分点: 思维导图敷衍了事 -1 代码格式混乱 -2 无码云提交记录 -2 无PTA实验总结 -2 部分题目未完成. 格式问题:到现在还搞不清楚的,主要是态度问题.相关的教程 ...

  9. 第02周-Java作业评价

    1. 本周作业简评与建议 作业存在的问题 格式上还是存在问题,但是比较第一次有很大的进步. 答题上,有的同学还是很敷衍,题目要求有分析过程,但是只写一个false,true,没有分析.也比较缺少自己的 ...

随机推荐

  1. .NET MAUI RC2 发布,支持 Tizen 平台

    在.NET多平台应用程序UI(.NET MAUI)RC1之后仅两周,微软已经发布了RC2,并以新的Tizen支持为亮点..NET MAUI是微软对Xamarin.Forms的演变,因为它除了iOS和A ...

  2. elasticSearch 7.6.1 入门及elasticSearch整合springboot

    一.ElasticSearch概述 官网:https://www.elastic.co/cn/downloads/elasticsearch Elaticsearch,简称为es,es是一个开源的高扩 ...

  3. Nginx的mirror指令能干啥?

    mirror 流量复制 Nginx的 mirror 指令来自于 ngx_http_mirror_module 模块 Nginx Version > 1.13.4 mirror 指令提供的核心功能 ...

  4. 深入C++06:深入掌握OOP最强大的机制

    深入掌握OOP最强大的机制 1. 继承的基本意义 类与类之间的关系:①组合:a part of ... 一部分的关系:②继承: a kind of ... 属于同一种的关系: 继承的本质:a. 代码的 ...

  5. python入门基础知识三(列表和元组)

    列表(list)的操作 1. 形式 var = ['char1','char2','char3',...] var = [value1,value2,value3,...] 2. 列表的增删改查 查: ...

  6. 百万数据 mysql count(*)优化

    一.故事背景有一张 500w 左右的表做 select count(*) 速度特别慢. 二.原 SQL 分析Server version: 5.7.24-log MySQL Community Ser ...

  7. Dapr学习(2)之Rancher2.63(k8s&k3s)环境安装Dapr

    前言:前面写过一篇关于dapr入门安装的文章,self-host模式,使用docker安装的本地调试环境,并进行了测试:本篇介绍k8s方式安装dapr,此文主要基于的环境是k3s,通过rancher2 ...

  8. Java注解Annotaton

    1.三种基本的Annotaton @Override : 限定某个方法,是重写父类方法 , 该注解只能用于方法 @Deprecated : 用于表示某个程序元素 ( 类 , 方法等 ) 已过时 @Su ...

  9. 解决 js aysnc await try-catch 地狱

  10. SpringBoot Redis 实践指南

    前言 SpringBoot Cache 是一个很好的缓存框架,可以兼容多种缓存实现,数据量较大的情况下,Redis 应该是最多被使用的. 本文重点介绍 SpringBoot 和 Redis 整合使用的 ...