html5零基础学习笔记

HTML5基础

最常见的没有兼容性的HTML标签

网页

网站

网站是☞因特网上根据一定的规则,使用HTML等制作的用于展示特定内容相关的网页集合

网页

网页是☞网站中的一“页”,通常是HTML格式的文件,它要通过浏览器来阅读

网页是构成网站的基本元素,通常有图片、链接、文字、声音、视频等元素组成,通常我们看到的网页,常见以.htm或.html后缀结尾的文件,因此将其俗称为HTML文件

HTML

​ HTML指的是超文本标记语言(Hyper Text Markup Language),它是用来描述网页的一种语言

​ HTML不是一种编程语言,而是一种标记语言(markup language)

网页的形成

网页是由网页元素组成的,这些元素是利用html标签描述出来,然后通过浏览器解析来显示给用户的

前端人员开发代码→浏览器显示代码(解析、渲染)→生成最后的Web页面

浏览器

常用浏览器

浏览器是网页显示、运行的平台。常用的浏览器有IE、火狐、谷歌、Safari和Opera 平时称为五大浏览器

浏览器内核

浏览器内核(渲染引擎):负责读取网页内容,整理讯息,计算网页的显示方式并显示页面

Web标准(重点)

Web标准是由W3C组织和其他标准化组织制定的一系列标准的集合。W3C(万维网联盟)是国际最著名的标准化组织

为什么需要web标准:

浏览器不同,它们显示页面或者排版有差异→通过web标准显示统一内容

优点:1.让web的发展前景更广阔 2.内容能被更广泛的设备访问3.更容易被引擎搜索4.降低网站流量费用5.使网站更易于维护6.提高页面浏览速度

Web标准的构成

结构(Structure) 表现(Presentation)行为(Behavior)三个方面

结构用于对网页元素进行整理和分类,现阶段主要学的是HTML

表现用于设置网页元素的版式、颜色、大小等外观样式,主要指CSS

行为是指网页模型的定义及交互的编写,现阶段主要学的是Javascript

web标准提出的最佳体验方案:结构、样式相分离

简单理解:结构写到HTML文件中,表现写到CSS文件中,行为写到JavaScript文件中

相比较而言,三者中结构最重要

HTML标签

HTML语法规范

基本语法概述

1.所有的标签都在尖括号<>里面

2.大部分标签都是成对出现的:双标签

<html>  #开始标签
</html>  #结束标签 

也有极少的个例:单标签 不需要结束标签

<br />
标签关系

双标签关系可以分为两类:包含关系和并列关系

包含关系

指的是一个标签包含另外一个标签

<head>
    <title></title>
<head>
并列关系

两个标签相互并列

<head></head>
<body></body>

HTML基本结构标签

每个网页都会有一个基本的结构标签(骨架标签),页面内容也是在这些基本标签上书写

HTML页面也成为HTML文档

<html>   #HTML标签   页面中最大的标签,称之为根标签
  <head>   #文档的头部  注意在head标签中我们必须要设置的标签是title
      <title>我的第一个页面</title>  #文档的标题,让页面有一个属于自己的网页标题
  </head>
  <body>   #文档的主题  元素包含文档的所有内容,页面内容 基本都是放在body里面的
       你我之间,黑马洗练,月薪过万,一飞冲天
  </body>
</html>

HTML文档的后缀名必须是.html或.htm ,浏览器的作用是读取HTML文档,并以网页的形式显示它们。

开发工具

网页开发工具

Visual Studio Code、Builder

VSCode的使用

1.打开VSCode下载之后默认是英文可以在扩展插件 (Shift+Crtl+X)下搜索Language Packs下载第二个Chinese的中文包就可以变为中文版

2.点开文件新建文件(Crtl+N)→保存(Crtl+S)为选择文件夹.html文件

3.生成页面骨架结构:输入!→点击或者Tab→一个标准的框架出现

4.浏览自己的页面情况:右击点击Open In Default Browser

5.修改代码字体大小:大:‘Crtl’+’+’,小:‘Crtl’+’-’

6.浏览:利用插件(打开VSCode在扩展(Shift+Crtl+X)下搜索Open)在浏览器中预览页面:单机鼠标右键,在弹出窗口中点击"Open In Default Browser"

7.安装一些插件

Auto Rename Tag 自动重命名配对的HTML/XML标签

CSS Peek 追踪至样式

8.添加文字可以自动换行(Alt+z)

VSCode工具生成骨架标签新增代码
<!DOCTYPE>标签→文档类型声明标签

作用是告诉浏览器使用哪种HTML版本来显示页面

<!DOCTYPE html>   #当前页面采取的是HTML5版本来显示页面

注意:

1.位置放在整个代码的最前面的位置,处于标签之前。

2.<!DOCTYPE>不是一个HTML标签,它就是文档类型声明标签

lang语言 →标记语言

用来定义当前文档显示的语言:1.en定义语言为英语 2.zh-CN定义语言为中文 →定义为en就是英文网页,定义为zh-CN就是中文网页3.对于文档显示来说,定义成en的文档也可以显示中文,定义成zh-CN的文档也可以显示英文

<html lang="en">
字符集
<meta charset="UTF-8"/>   #charset常用的值有:GB2312、BIG5和UTF-8,其中UTF-8也被称为万国码,基本包含了全世界所有国家需要用到的字符

字符集(Character set)是多个字符的集合。以便计算机能够识别和存储各种文字

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

注意:上面语法是必须要写的代码,否则可能引起乱码的情况

HTML常用标签

标签语义

标签的含义,即这个标签是用来干嘛的 →根据标签的语义,在合适的地方给一个最为合理的标签,可以让页面结构更加清晰

标题标签<h1>-<h6>(重要)

标题语义:单词head的缩写,意为头部、标题;作为标题使用,并且依据重要性递减

为了使网页更具有语义化,我们经常会在页面中用到标题标签。HTML提供了六个等级的网页标题即<h1>-<h6> → 是一个双标签→在<body>内输入

特点:

  1. 加了标题的文字会变得加粗,字号也会依次变大
  2. 一个标题独占一行
<h1>我是一级标题</h1>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>标题标签</h1>
    <h1>标题一共六级选</h1>
    <h2>文字加粗一行显</h2>
    <h3>由小到大依次减</h3>
    <h4>从重到轻随之变</h4>
    <h5>语法规范书写后</h5>
    <h6>具体效果刷新见</h6>
    </body>
</html>
段落标签和换行标签(重要)
段落标签<p></p>

标签语义:单词paragraph的缩写,意为段落,可以把HTML文档分隔为若干段落

标签用于定义段落,它可以将整个网页分为若干个段落

特点:文本在一个段落中会根据浏览器窗口的大小自动换行;段落和段落之间保有空隙

<p>我是一个段落标签</p>
换行标签

标签语义:单词break的缩写,意为打断、换行,强制换行

在HTML中,一个段落中的文字会从左到右依次排列,直到浏览器窗口的右端,然后才自动换行。如果希望某段文本强制换行显示,就需要使用换行标签

特点:单标签,只是简单地开始新的一行,跟段落不一样,段落之间会插入一些垂直的间距

</ br>
文本格式化标签

在网页中,设置粗体、斜体或下划线等效果,这个标签可以使文字以特殊的方式显示

标签语义:突出重要性,比普通文字更重要

<strong></strong>或者<b></b>   #加粗
<em></em>或者<i></i>       #倾斜
<del></del> 或者<s></s>   #删除
<ins></ins>或者<u></u>   #下划线
<div>和<span>标签

<div>和<span>是没有语义的,它们就是一个盒子,用来装内容的

<div>这是头部</div>
<span>今日价格</span>

div是division,表示分割、分区。span意为跨度、跨距

特点:

<div>标签用来布局,但是现在一行只能放一个<div>.。大盒子

<span> 标签用来布局,一行上可以多个<span>。小盒子

图像标签和路径
图像标签<img>

①图像语义:单词image的缩写,意为图像

②在HTML标签中,<img>标签用于定义HTML页面中的图像→单标签

③图像文本的其他属性:

src-图片路径-必须属性;

alt-文本-替换文本,图像不能显示的文字;

title-文本-提示文本,鼠标放到图像上,显示的文字;

width-像素-设置图像的宽度;

height-像素-设置图像的高度;

border-像素-设置图像的边框粗细

④注意:图像标签可以拥有多个属性,必须写在标签名的后面

属性之间不分先后顺序,标签名与属性、属性与属性之间均以空格分开

属性采取键值对的格式,即key=“value”的格式,属性=“属性值”

<img src="图像URL"/>  #src是<img>的必须属性,它用于制定图像文件的路径和文件名
#属性:属于这个图像标签的特性
<img src="图像URL" alt="文字内容"/>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>标签的使用</title>
</head>
<body>
    <h1>标题标签</h1>
    <p>拜登周四(3日)接受CNN采访时表示<br>
    已与美国国家过敏和传染病研究所所长安东尼·福奇谈话,邀请他在新政府担任首席医疗顾问和新冠应对小组成员,维持其目前的职位。此外,拜登<strong>也表示</strong>计划在就职当天要求公众戴口罩至少100天。“只需戴100天,并非永久戴。<br>我想到时候我们会看到新冠病例明显减少。”</p>
<p>从1984年开始,福奇担任<em>美国国家</em>过敏症与传染病研究所所长达36年,先后供职六届美国政府部门,在业界享有<del>崇高声誉</del>。然而,在美国疫情失控之后,美国现任总统与他渐行渐远,多次称他为“灾难”,并在<ins>竞选集会</ins>中暗示可能会炒掉福奇。</p>
    <h6>具体效果刷新见</h6>
    <img src="图像URL" title="123四"width="500" height="100" border="15"/>   #border 在后面的CSS后面会学习到
    <img src="不能显示的图像" arc=“这个图像不能显示”/>
         </body>
</html>
路径

(1)目录文件夹和根目录:

目录文件夹:普通文件夹,存放我们需要的东西

根目录:打开目录文件夹的第一层就是根目录

(2)路径:

路径可以分为:相对路径和绝对路径

相对路径:以引用文件所在位置为参考基础,而建立出的目录路径(图片相对于HTML的位置)

个人理解:就是对于以你选择的文件做为参考物,如果文件在之前你的上一级目录(…/),就成为上一级目录,如果文件和你在同一个文件夹,则是同一级路径,如果在你所在的文件夹中的文件夹里面,则是下一级路径(符号 /)

<img src="下一级目录名/文件名" />"  #引入下一级路径图片相对路径
<img src="../文件名"/>  #引入上一级路径图片相对路径

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

网络上的绝对地址:复制网页的图片网址进行插入

<img src="https://code.visualstudio.com/docs/editor/intellisense /"
超链接标签<a>

<a>标签用于定义超链接,作用是从一个页面链接到另一个页面

链接的语法格式
<a href="跳转目标" target="目标窗口的弹出方式">文本或图像</a>
<a href="跳转目标" target="_self">文本或图像</a> #把当前页面替换
<a href="跳转目标" target="_blank">文本或图像</a>  #在新窗口中打开方式

herf(必须属性):用于指定链接目标的url地址,当为标签应用href属性时,它就具有了超链接的功能

target:用于指定链接的打开方式,其中_self为默认值(把当前页面替换),_blank为在新窗口中打开方式

链接分类

①外部链接,例如<a href=“http://www.baidu.com”>百度</a>。

②内部链接:网站内部页面之间的相互链接,直接链接内部页面名称即可,例如<a href =“网页名字”>首页<a>

③空链接:如果当前没有确定链接目标时,<a href="#">首页<a>

④下载链接:如果href里面地址是一个文件或者压缩包,会下载这个文件

⑤网页元素链接:在网页中的各种网页原色,如文本、图像、表格、音频、视频等都可以添加超链接

⑥锚点链接:点我们点击链接,可以快速定位到页面中的某个位置

1.在链接文本的herf属性中,设置属性值为#名字的形式,如<a herf="#two">第2几<\a>

2.找到目标位置标签,里面添加一个id属性=刚才的名字,如<h3 id="two"第2几介绍></h3>

注释和特殊字符
注释:

添加一些便于阅读和理解但是又不需要显示在页面的注释文字

<!--注释语句-->  快捷键Crtl+ /  #这个/是英文键盘的/不是数字键盘的/

特殊字符

特殊字符描述字符的代码
空格符&nbsp;
<小于号&it;
>大于号&gt;
×乘号&times;
÷除号&divide;
&和号&amp;
表格标签
表格的主要作用

用于显示、展示数据

表格的基本语法
<table>  #用于定义表格的标签
    <tr> #用于定义表格中的行,必须嵌套在table里面
        <td>单元格内的文字</td>  #用于定义表格中的单元格,必须嵌套在tr标签中
        ……
    </tr>
    ……
</table> 
表头单元格标签

一般表头单元格位于表格的第一行或第一列,表头单元格里面的文本内容加粗居中显示

<th>标签显示HTML表格的表头部分

<table>  #用于定义表格的标签
    <tr> #用于定义表格中的行,必须嵌套在table里面
        <th>单元格内的文字</th>  #用于定义表格中的单元格,必须嵌套在tr标签中
        ……
    </tr>
    ……
</table> 
表格属性(通过后面CSS)
属性名属性值描述
alignleft、center、right规定表格相对周围元素的对齐方式
border1或""规定表格单元是否拥有边框,默认为"",表示没有边框
cellpadding像素值规定单元格沿与其内容之间的空白,默认1像素
cellspacing像素值规定单元格之间的空白,默认2像素
width像素值或百分比规定表格的宽度
表格结构标签

使用场景:因为表格可能很长,为了更好的表示表格的含义,可以将表格分割成表格头部和表格主体两大部分

在表格标签中,分别用<thead>标签表示表格的头部区域,<tbody>标签表示表格的主题区域

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <table align="center" border="1" cellpadding="4" cellspacing="0" width="500" height="250">
        <thead>
        <tr><th>姓名</th> <th>性别</th> <th>年龄</th></tr>
        </thead>
        <tbody>
        <tr><td>刘德华</td> <td></td> <td>56</td></tr>
        <tr><td>张学友</td> <td></td> <td>58</td></tr> 
        <tr><td>王嘉璇</td> <td></td> <td>20</td></tr> 
        </tbody>
    </table>
</body>
</html>
合并单元格

1.合并单元格方式

跨行合并:rowspan=“合并单元格的个数”

跨列合并:colspan=“合并单元格的个数”

目标单元格(写合并代码)

跨行:最上侧单元格为目标单元格,写合并代码

跨列:最左侧单元格为目标单元格,写合并代码

如何合并

1.先确定是跨行还是跨列

2.找到目标单元格,写上合并方式=合并的单元格数量。比如<td colspan=“2”></td>

3.删除多余的单元格

 <table width="200" border="2" height="250"cellspacing="0">
        <tr>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td></td>
            <td rowspan="2"></td>
            <td></td>
        </tr>
        <tr>
            <td></td>
            
            <td></td>
        </tr>
    </table>
列表标签

列表是用来布局的 →最大的特点就是整齐、整洁、有序,它作为布局会更加自由和方便

列表分为无序列表、有序列表和自定义列表

无序列表(重点)

<ul>标签表示HTML页面中项目的无序列表,一般会以项目符号呈现列表项,而列表项使用<li>标签定义

注意:

1.无序列表的各个列表项之间没有顺序级别之分,是并列的

2.<ul></ul>中只能嵌套<li></li>,直接在<ul></ul>标签中输入其他标签或者文字的做法是不被允许的

3.<li>与</li>之间相当于一个容器,可以容纳所有元素

4.无序列表会带有自己的样式属性,但在实际使用中,我们会使用CSS来设置

<ul>
    <li>列表项1</li>
    <li>列表项2</li></ul>
有序列表(理解)

有序列表即为有排列顺序的列表,其各个列表项会按照一定的顺序排列定义

在HTML标签中,<ol>标签用于定义有序列表,列表排序以数字来显示,并且使用<li>标签定义列表项

<ol>
    <li>列表项1</li>
    <li>列表项2</li></ol>

注意事项和无序列表差不多

自定义列表(重点)

使用场景: 自定义列表常用语对术语或者名词进行解释和描述,定义列表的列表项前没有任何项目符号

在HTML标签中,<dl>标签用于定义描述列表(或定义列表),该标签会与<dt>(定义项目/名字)和<dd>(描述每一个项目/名字)一起使用

<dl>
    <dt>名词1</dt>
    <dd>名词1解释1</dd>
    <dd>名词1解释2</dd>
</dl>

注意:

1.<dl>里面只能包含<dt>和<dd>

2.<dt>和<dd>个数没有限制,经常是一个<dt>对应多个<dd>

表单标签

#类似于注册页面之类的

目的:收集用户信息
表单的组成

表单域、表单控件(表单元素)、提示信息3个部分

表单域

包含表单元素的区域

在HTML标签中,<form>标签用于定义表单域,以实现用户信息的收集和传递

<form>会把它范围内的表单元素信息提交给服务器

<form action="url地址" method="提交方式" name="表单域名称">
    各种表单元素控件
</form>
属性属性值作用
actionurl地址用于指定接受并处理表单数据的服务器程序的url地址
methodget/post用于设置表单数据的提交方式,其取值为get或post
name名称用于指定表单的名称,以区分同一个页面中的多个表单域
表单控件(表单元素)

在表单域中可以定义各种表单元素,这些表单元素就是允许用户在表单中输入或者选择的内容控件

1.input输入表单元素(单标签)

<input>标签用于收集用户信息 标签包含一个type属性,根据不同的type属性值,输入字段拥有很多种形式(可以是文本字段、复选框、按钮等)

<input type="属性值" /> 				
属性值描述
button定义可点击按钮(多数情况下,用于通过JavaScript启动脚本)
checkbox定义复选框
file定义输入字段和"浏览"按钮,供文件上传
hidden定义隐藏的输入字段
image定义图像形式的提交按钮
password定义密码字段,该字段中的字符被掩码
radio定义单选按钮
reset定义重置按钮,重置按钮会清除表单中的所有数据
submit定义提交按钮,提交按钮会把表单数据发送到服务器
text定义单行的输入字段,用户可在其中输入文本,默认宽度为20个字符
属性属性值描述
name由用户自定义定义input元素的名称
value由用户自定义规定input元素的值
checkedchecked规定此input元素首次加载时应当被选中(主要针对按钮)
maxlength正整数规定输入字段中的字符的最大长度
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <form>
       <!-- text文本框 用户可以在里面输入任何文字 -->
       <!-- maxlength规定输入最大字符 -->
    用户名:<input type="text" name="username" value="请输入用户名" maxlength="6"/><br>
       <!-- 密码框,用户看不见输入的内容 -->
    密码:<input type="password" name="password"/><br>
       <!-- 单选框,用户可以选择性别可以实现多选一 -->   
       <!-- name是表单元素名字,这里性别单选按钮必须有相同的名字name才能多选1 -->
       <!-- 单选按钮和复选框可以设置checked属性,当页面打开的时候就可以默认选择这个按钮 -->     性别:男<input type="radio"name="sex"checked="checked">女<input type="radio" name="sex">人妖<input type="radio" name="sex"><br>  
       <!-- 复选框可以多选 -->
   爱好:吃饭<input type="checkbox" name="hobby"value="吃饭"> 睡觉<input type="checkbox"name="hobby"value="睡觉">  打豆豆<input type="checkbox"name="hobby"value="打豆豆"> <br>
       <!-- 点击了提交按钮,可以把表单域里面的表单元素里面的值提交给后台服务器submit默认是"提交",value可以更改其内容 --> 
        <input type="submit" value="免费注册">
     <!-- 重置按钮可以还原表单元素初始的默认状态 -->  
        <input type="reset" value="重新填写"><br>
        <!-- 上传文件使用 -->
        <input type="file">
    </form>
</body>
</html>
2.<lable>标签

<lable>标签为input元素定义标注(标签);可以绑定一个表单元素,当点击<lable>标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验

<lable for="sex"></lable>
<input type="radio" name="sex" id="sex" />

<lable>标签的for属性要与id属性相同

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
   <label for="text">用户名</label><input type="text" id="text">
   <input type="radio"id="nan"name="sex"> <label for="nan"></label>
   <input type="radio"id="nv"name="sex"> <label for="nv"></label>
</body>
</html>
3.select下拉表单元素

使用场景:在页面中,如果有多个选项让用户选择,并且想要节约页面空间时,我们可以使用<select>标签空间定义下拉列表

<select>
    <option>选项1</option>
    <option>选项2</option>
    ……
</select>

注意:

1.<select>中至少包含一对<option>

2.在<option>中定义selected=”selected“时,当前项即为默认选中项

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <select>
        <option>天津</option>
        <option>河北</option>
        <option>上海</option>
        <option>北京</option>
        <option>成都</option>
        <option selected="selected">重庆</option>
        <option>大连</option>
    </select>
</body>
</html>
textarea文本域元素

使用场景:当用户输入内容较多的情况下,可以使用<textarea>标签;可以定义多行文本输入的控件

<textarea rows="" cols="">文本</textarea>

cols=“每行中的字符数” rows=“显示的行数”(实际开发不会使用,用CSS来改变)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值