HTML学习

HTML

什么是HTML

HTML

  • Hyper Text Markup Language(超文本标记语言)
  • 超文本包括:文字、图片、音频、视频、动画等

前端调试界面,在该网站界面右键,选择审查,后续的前段调试大多在此页面操作:

HTML发展史

目前网页中常用:HTML5 + CSS 3

HTML5的优势

  • 世界知名浏览器厂商对HTML5的支持
    • 微软
    • Google
    • 苹果
    • Opera
    • Mozilla
  • 市场的需求
  • 跨平台

W3C标准

W3C

  • World Wide Web Consortium(万维网联盟)
  • 成立于1994年,Web技术领域最权威和具影响力的国际中立性技术标准机构
  • https://www.w3.org/
  • https://www.chinaw3c.org/

W3C标准包括:

  • 结构化标准语言 HTML、XML
  • 表现标准语言 CSS
  • 行为标准 DOM、ECMAScript

常见IDE

  1. 记事本
  2. Dreamweaver
  3. WebStorm
  4. IDEA(集成了WebStorm)

HTML基本结构

  • <body>、</body>等成对的标签,分别叫开放标签和闭合标签
  • 单独呈现的标签(空元素),如<hr/>;意为用/来关闭空元素,叫自闭合标签

网页基本信息

HTML注释书写格式:<!-- 注释格式 -->

  1. DOCTYPE声明:

    文档类型:告诉浏览器要使用什么规范

    如:

  2. html标签:总的大标签,所有的HTML代码都要写在这个标签之内

  3. head标签:代表网页头部

    • title标签:显示在浏览器标签页的网页标题
    • meta标签:描述性标签,用来描述我们网站的一些信息,通过这些信息我们的网站才会被搜索引擎所查询到。一般用来做SEO(搜索引擎优化)
  4. body标签:代表网页的主体

    <!-- DOCTYPE:告诉浏览器要使用什么规范 -->
    <!DOCTYPE html>
    <!-- html:总的大标签,所有的HTML代码都要在此标签之内 -->
    <html lang="en">
    <!-- head:代表网页头部 -->
    <head>
        <!-- meta:描述性标签,用来描述我们网站的一些信息,是搜索引擎能搜索到的原因 -->
        <meta charset="UTF-8">
        <meta name="keywords" content="我的Java学习记录">
        <meta name="description" content="记录我的Java学习过程">
        <!-- title:网页标题 -->
        <title>这就是网页标题吗</title>
    </head>
    <!-- body:代表网页主体 -->
    <body>
    HelloWorld!
    </body>
    </html>
    

网页标签

网页基本标签

  • 标题标签
  • 段落标签
  • 换行标签
  • 水平线标签
  • 字体样式标签
  • 注释和特殊符号
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>基本标签学习</title>
</head>
<body>

<!-- 标题标签 -->
<h1>一级标签</h1>
<h2>二级标签</h2>
<h3>三级标签</h3>
<h4>四级标签</h4>
<h5>五级标签</h5>
<h6>六级标签</h6>

<!-- 段落标签 -->
<p>两只老虎,两只老虎,跑得快,跑得快</p>
<p>一只没有眼睛,一只没有尾巴,真奇怪!真奇怪!</p>
<p>两只老虎,两只老虎,跑得快,跑得快</p>
<p>一只没有眼睛,一只没有尾巴,真奇怪!真奇怪!</p>

<!-- 水平线标签 -->
<hr/>

<!-- 换行标签 -->
<!-- 一般来说,自闭合标签不需要 / 但我们也加上 / ,这里虽然换行了,但是明显感到行距和段落标签产生的行距不同,即所有内容仍然属于一个段落 -->
两只老虎,两只老虎,跑得快,跑得快<br/>
一只没有眼睛,一只没有尾巴,真奇怪!真奇怪!<br/>
两只老虎,两只老虎,跑得快,跑得快<br/>
一只没有眼睛,一只没有尾巴,真奇怪!真奇怪!<br/>

<!-- 粗体,斜体 -->
<hr/>
<h1>字体样式标签</h1>
粗体:<strong>I love you!</strong><br/>
斜体:<em>I love you!</em>

<!-- 特殊符号 -->
<hr/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>
大于号:&gt;
<br/>
小于号:&lt;
<br/>
版权符号:&copy;版权所有:Luck1y

<!--
特殊符号记忆方式:&开头,;结尾
直接在IDEA中输入 &+字母 就会自动跳出,或者百度
-->
&hearts;
</body>
</html>

图像标签

常见的图像格式

  • JPG
  • GIF
  • PNG
  • BMP(位图)

良好的编码规范:资源独立建立一个存放的目录:resources,每种资源分文件夹独立存放。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>图像标签学习</title>
</head>
<body>
<!-- img 标签学习
sec:图片地址
    相对地址(推荐)、绝对地址
    ../ 表示上一级目录
alt:图片加载失败返回的信息(必填)
title:光标放置在图片上方显示的悬停文字(选填)
width和height:宽度和高度(选填)
......
-->

<img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">
</body>
</html>

链接标签

  • 文本超链接
  • 图像超链接

超链接:

  1. 页面间链接

    从一个页面链接到另一个页面

  2. 锚链接

    还可以实现不同页面间的锚链接跳转

  3. 功能性链接

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>链接标签学习</title>
</head>
<body>

<!-- 使用name作为标记 -->
<a name="top">顶部</a>
<!-- a 标签
href:必填,表示要跳转到哪个页面
target:表示窗口在哪里打开
       _blank 在新的页面打开
       _self 在自己的网页中打开

-->
<a href="1.我的第一个网页.html" target="_blank">点我跳转到页面一</a>
<br/>
<a href="https://www.baidu.com">点我跳转到百度</a>
<br/>

<a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
<br/>

<p><a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
  <br/></p>

<p><a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
  <br/></p>

<p><a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
  <br/></p>

<p><a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
  <br/></p>

<p><a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
  <br/></p>

<p><a href="1.我的第一个网页.html">
  <img src="../resources/image/Java.png" alt="Java图标" title="这是悬停文字示例">点我跳转到页面一</a>
  <br/></p>

<!-- 锚链接
1.需要一个锚标记
2.跳转到标记
用 # 表示
-->

<a href="#top">回到顶部</a>

<!-- 功能性链接
邮箱链接:mailto
-->
<a href="mailto:luck1yliu@foxmail.com">点击联系我</a>
</body>
</html>

行内元素和块元素

  • 块元素

    • 无论内容多少,该元素单独占一行
    • p标签、h1-h6标题标签…
  • 行内元素

    • 内容撑开宽度,左右都是行内元素的可以排在一行
    • a标签、strong标签、em标签…

列表标签

什么是列表:

  • 列表就是信息资源的一种展现形式。它可以使信息结构化和条理化,并以列表的样式显示出来,以便浏览者能更快捷地获得相应的信息。

列表的分类:

  • 无序列表
  • 有序列表
  • 自定义列表
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>列表学习</title>
</head>
<body>
<!-- 有序列表
应用范围:试卷、问答……
-->
<ol>
    <li>学科</li>
    <li>Java</li>
    <li>Python</li>
    <li>运维</li>
    <li>前端</li>
    <li>C++</li>
</ol>

<hr/>
<!-- 无序列表
应用范围:导航栏、侧边栏……
-->
<ul>
    <li>学科</li>
    <li>Java</li>
    <li>Python</li>
    <li>运维</li>
    <li>前端</li>
    <li>C++</li>
</ul>

<hr/>
<!-- 自定义序列表
dl:标签
dt:列表名称
dd:列表内容
应用范围:网站的底部
-->
<dl>
    <dt>学科</dt>
    <dd>Java</dd>
    <dd>Python</dd>
    <dd>前端</dd>
    <dd>后端</dd>
    <dd>C++</dd>

    <dt>位置</dt>
    <dd>北京</dd>
    <dd>上海</dd>
    <dd>广东</dd>
    <dd>西安</dd>
    <dd>南京</dd>
</dl>
</body>
</html>

表格标签

  • 为什么使用表格
    • 简单通用
    • 结构稳定
  • 基本结构
    • 单元格
    • 跨行
    • 跨列
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>表格学习</title>
</head>
<body>

<!-- 表格table
行   tr  rows
列   td
-->
<table border="1px">
    <tr>
        <!-- colspan 跨列 -->
        <td colspan="4">1-1</td>
    </tr>
    <tr>
        <!-- rowspan 跨行 -->
        <td rowspan="2">2-1</td>
        <td>2-2</td>
        <td>2-3</td>
        <td>2-4</td>
    </tr>
    <tr>
        <td>3-1</td>
        <td>3-2</td>
        <td>3-3</td>
    </tr>
</table>
<hr/>

<!-- 简单做一个表格 -->
<table border="1px">
    <tr>
        <td colspan="3" align="center">学生成绩</td>
    </tr>
    <tr>
        <td rowspan="2">刘子</td>
        <td>语文</td>
        <td>100</td>
    </tr>
    <tr>
        <td>数学</td>
        <td>100</td>
    </tr>
    <tr>
        <td rowspan="2">杨子</td>
        <td>语文</td>
        <td>100</td>
    </tr>
    <tr>
        <td>数学</td>
        <td>100</td>
    </tr>
</table>
</body>
</html>

媒体元素

视频和音频

  • 视频元素:

    video

  • 音频元素:

    audio

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>媒体元素学习</title>
</head>
<body>
<!--音频和视频
    1. src:资源路径
    2. controls:控制开关
    3. autoplay:自动播放
-->
<video src="../resources/video/Ela.mp4" controls></video>
<audio src="../resources/audio/Ash - Melody (Original mix).mp3" controls autoplay></audio>
</body>
</html>

页面结构分析

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>页面结构分析</title>
</head>
<body>

<header>
    <h2>网页头部</h2>
</header>

<section>
    <h2>网页主体</h2>
</section>

<footer>
    <h2>网页脚部</h2>
</footer>

</body>
</html>

iframe内联框架

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>内联框架iframe</title>
</head>
<body>
<!-- iframe内联框架
src:地址
width和height:宽度和高度
-->
<iframe src="" frameborder="0" name="hello"></iframe>
<a href="https://blog.youkuaiyun.com/liujaiqi111" target="hello">点击跳转</a>
<hr/>

<iframe
        src="//player.bilibili.com/player.html?aid=55631961&bvid=BV1x4411V75C&cid=97257967&page=11"
        scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true">
</iframe>
</body>
</html>

表单(重点)

表单语法

表单:form

action:表单提交的位置,可以是网站,也可以是一个请求处理地址

method:post,get提交方式

​ get方式提交:能够在URL中看到我们提交的信息,高效但不安全,不能传输大文件

​ post方式提交:比较安全,可以传输大文件,但可以在审查中看到输入的内容

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登录注册</title>
</head>
<body>

<h1>注册</h1>

<!-- 表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理地址
method:post,get提交方式
       get方式提交:能够在URL中看到我们提交的信息,高效但不安全,不能传输大文件
       post方式提交:比较安全,可以传输大文件
-->
<form action="1.我的第一个网页.html" method="post">
    <!-- 文本输入框:input type=“text” -->
    <p>名字:<input type="text" name="username"></p>
    <!-- 密码框:input type=“text” -->
    <p>密码:<input type="password" name="pwd"></p>
    <p>
        <input type="submit">
        <input type="reset">
    </p>
</form>
</body>

表内元素格式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登录注册</title>
</head>
<body>

<h1>注册</h1>

<!-- 表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理地址
method:post,get提交方式
       get方式提交:能够在URL中看到我们提交的信息,高效但不安全,不能传输大文件
       post方式提交:比较安全,可以传输大文件
-->
<form action="1.我的第一个网页.html" method="post">
    <!-- 文本输入框:input type=“text”
    value:初始值
    size:文本框长度的大小
    maxlength:最长能写几个字符
    -->
    <p>名字:<input type="text" name="username"></p>
    <!-- 密码框:input type=“text” -->
    <p>密码:<input type="password" name="pwd"></p>

    <!-- 单选框标签
    input type=“radio”
    value:单选框的值
    name:表示是否属于这一组,同一个name为同一个组
    checked:默认选中
    -->
    <p>性别:
        <input type="radio" value="boy" name="sex"/><input type="radio" value="girl" name="sex"/></p>

    <!-- 多选框 -->
    <p>爱好:
        <input type="checkbox" value="sleep" name="hobby">睡觉
        <input type="checkbox" value="code" name="hobby" checked>敲代码
        <input type="checkbox" value="chat" name="hobby">聊天
        <input type="checkbox" value="game" name="hobby">游戏
        <input type="checkbox" value="girl" name="hobby">女孩子
    </p>

    <!--按钮
    input type="button" 普通按钮
    input type="image"  图片按钮
    input type="submit" 提交按钮
    input type="reset"  重置按钮
    -->
    <p>
        <input type="button" name="btn1" value="点击进入">
        <!-- 图片按钮有自动提交功能 -->
        <!--<input type="image" src="../resources/image/Java.png">-->
    </p>

    <!-- 下拉框 列表框
    option 选项
    selected 默认选择
    -->
    <p>国家:
        <select name="国家">
            <option value="China" selected>中国</option>
            <option value="US">美国</option>
            <option value="Swiss">瑞士</option>
            <option value="India">印度</option>
        </select>
    </p>

    <!-- 文本域 -->
    <p>反馈:
        <textarea name="textarea" cols="30" rows="10">文本内容</textarea>
    </p>

    <!-- 文件域
    input type=“file”
    -->
    <p>
        <input type="file" name="files">
        <input type="button" value="上传" name="upload">
    </p>

    <!-- 邮件验证 初级-->
    <p>邮箱:
        <input type="email" name="email">
    </p>

    <!-- URL验证 -->
    <p>URL:
        <input type="url" name="url">
    </p>

    <!-- 数字验证 -->
    <p>数量:
        <input type="number" name="number" max="100" min="0" step="10">
    </p>

    <!-- 滑块 -->
    <p>音量:
        <input type="range" name="voice" min="0" max="100" step="2">
    </p>

    <!-- 搜索框 -->
    <p>搜索:
        <input type="search" name="search">
    </p>

    <p>
        <input type="submit" value="提交表单">
        <input type="reset" value="清空表单">
    </p>
</form>
</body>

网页截图:

表单的应用

  • 隐藏域:hidden

    • <p>密码:
          <input type="password" name="password" value="123456" hidden>
      </p>
      
  • 只读:readonly

    • <p>名字:
          <input type="text" name="username" maxlength="8" size="30" readonly placeholder="请输入用户名">
      </p>
      
  • 禁用:disabled

    • <p>性别:
          <input type="radio" value="boy" name="sex" checked disabled/><input type="radio" value="girl" name="sex"/></p>
      
  • 增强鼠标可用性(实现鼠标点击前边的文字,可以锁定后边的框):

    • <label for=“mark”>你点我试试</label>
      <input type=“text” id=“mark”>

    • <!-- 增强鼠标可用性 -->
      <p>
          <label for="mark">你点我试试</label>
          <input type="text" id="mark">
      </p>
      

表单的初级验证

  • 为什么需要进行表单验证?

    • 保证数据的安全性
    • 减轻服务器的压力
  • 常用方式

    • placeholder:提示信息,用在所有的输入框中,提示这里需要输入什么内容

      • <p>名字:
            <input type="text" name="username" placeholder="请输入用户名">
        </p>
        
    • required:要求元素不能为空

      • <p>密码:
            <input type="password" name="pwd" required>
        </p>
        
    • pattern:正则表达式

      • <p>自定义邮箱:
            <input type="text" name="diymail" pattern="/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
                /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/或\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">
        </p>
        

表单代码汇总

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登录注册</title>
</head>
<body>

<h1>注册</h1>

<!-- 表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理地址
method:post,get提交方式
       get方式提交:能够在URL中看到我们提交的信息,高效但不安全,不能传输大文件
       post方式提交:比较安全,可以传输大文件
-->
<form action="1.我的第一个网页.html" method="post">
    <!-- 文本输入框:input type=“text”
    value:初始值
    size:文本框长度的大小
    maxlength:最长能写几个字符
    -->
    <p>名字:<input type="text" name="username" placeholder="请输入用户名"></p>
    <!-- 密码框:input type=“text” -->
    <p>密码:<input type="password" name="pwd" required></p>

    <!-- 单选框标签
    input type=“radio”
    value:单选框的值
    name:表示是否属于这一组,同一个name为同一个组
    checked:默认选中
    -->
    <p>性别:
        <input type="radio" value="boy" name="sex"/><input type="radio" value="girl" name="sex"/></p>

    <!-- 多选框 -->
    <p>爱好:
        <input type="checkbox" value="sleep" name="hobby">睡觉
        <input type="checkbox" value="code" name="hobby" checked>敲代码
        <input type="checkbox" value="chat" name="hobby">聊天
        <input type="checkbox" value="game" name="hobby">游戏
        <input type="checkbox" value="girl" name="hobby">女孩子
    </p>

    <!--按钮
    input type="button" 普通按钮
    input type="image"  图片按钮
    input type="submit" 提交按钮
    input type="reset"  重置按钮
    -->
    <p>
        <input type="button" name="btn1" value="点击进入">
        <!-- 图片按钮有自动提交功能 -->
        <!--<input type="image" src="../resources/image/Java.png">-->
    </p>

    <!-- 下拉框 列表框
    option 选项
    selected 默认选择
    -->
    <p>国家:
        <select name="国家">
            <option value="China" selected>中国</option>
            <option value="US">美国</option>
            <option value="Swiss">瑞士</option>
            <option value="India">印度</option>
        </select>
    </p>

    <!-- 文本域 -->
    <p>反馈:
        <textarea name="textarea" cols="30" rows="10">文本内容</textarea>
    </p>

    <!-- 文件域
    input type=“file”
    -->
    <p>
        <input type="file" name="files">
        <input type="button" value="上传" name="upload">
    </p>

    <!-- 邮件验证 初级-->
    <p>邮箱:
        <input type="email" name="email">
    </p>

    <!-- URL验证 -->
    <p>URL:
        <input type="url" name="url">
    </p>

    <!-- 数字验证 -->
    <p>数量:
        <input type="number" name="number" max="100" min="0" step="10">
    </p>

    <!-- 滑块 -->
    <p>音量:
        <input type="range" name="voice" min="0" max="100" step="2">
    </p>

    <!-- 搜索框 -->
    <p>搜索:
        <input type="search" name="search">
    </p>

    <!-- 增强鼠标可用性 -->
    <p>
        <label for="mark">你点我试试</label>
        <input type="text" id="mark">
    </p>
    
    <p>自定义邮箱:
        <input type="text" name="diymail" pattern="/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
            /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/或\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">
    </p>
    
    <p>
        <input type="submit" value="提交表单">
        <input type="reset" value="清空表单">
    </p>
</form>
</body>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Luck1y

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值