HTML笔记

HTML

1.初识HTML

  • HTML

    Hyper Text Markup Language(超文本标记语言)

    超文本包括文字、图片、视频、音频、动画等。

HTML笔记

现在用的是HTML5。

HTML笔记

HTML笔记

ECMScript是JavaScript需要遵守的规范

面试可能问到的问题:

  • W3C是什么
  • W3C标准包括什么

前端的最常用的IDE:WebStorm

2.网页基本信息

HTML笔记

注释:

<!--DOCTYPE:(文档类型)告诉浏览器,我们要使用什么规范,默认是HTML5,因此可以省略不写-->
<!--Ctrl + / 是注释的快捷键-->
<!DOCTYPE html>
<html lang="en">
<!--head标签代表网页头部-->
<head>
    <!-- meta描述性标签,用来描述网页的一些信息  -->
    <!-- meta一般用来做SEO  -->
    <meta charset="UTF-8">
    <meta name="keywords" content="这是一个学习笔记">
    <meta name="description" content="来这里可以一起学习">

    <!--title  网页标题 -->
    <title>我的第一个网页</title>
</head>
<body>
<!--body标签代表网页主体-->
</body>
</html>

3.网页基本标签

  • 标题标签
  • 段落标签
  • 换行标签
  • 水平线标签
  • 字体样式标签
  • 注释和特殊符号
<!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+Tab键,自动生成-->
<P>两只老虎,两只老虎,</P>
<P>跑得快,跑得快,</P>
<P>一只没有眼睛,</P>
<p>一只没有尾巴,</p>
<p>真奇怪!真奇怪!</p>

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

<!--换行标签-->
两只老虎,两只老虎,<br>
跑得快,跑得快,<br>
一只没有耳朵,<br>
一只没有尾巴,<br>
真奇怪!真奇怪!<br>

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

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

<!--特殊符号记忆方式:
& 开头
; 结尾

通过&加一个字母调用,随用随查
-->


</body>
</html>

4.图像标签

常见的图像格式:

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

<img src=“图像路径” alt=“图像的替代文字” title=“鼠标悬停文字” width=“图像宽度” height=“图像高度”>

HTML笔记

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>图像标签</title>
</head>
<body>
<!--img标签学习
src:图片地址
    相对地址:../  代表上一级目录
    绝对地址:盘符开始,不推荐
alt:必填的,图片名字 ,当图片找不到时,无法显示图片就会显示图片名字
-->
<img src="../resource/image/img1.jpg" alt="请回答1988" title="悬停文字" width="300" height="200">

</body>
</html>

5.链接标签

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

<a href=“链接路径” target=“目标窗口的位置:常用_self、_blank”>链接的文本或图像</a>

链接类型:

  • 页面链接
  • 锚链接
  • 功能性链接
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>链接标签</title>
</head>
<body>

<!--使用name作为标记-->
<a name="top">顶部</a>

<!--链接标签a
href:必填,表示要跳转到哪个页面
a标签中可以嵌套其他标签,如img,表示点击图片跳转
target:表示窗口在哪里打开
        _bank:在新标签页打开
        _self:在自己的网页打开,默认的打开方式

-->
<a href="https://www.baidu.com">点击我跳转页面1</a><br>
<a href="图像标签.html" target="_blank">点击我跳转页面2</a>
<br>
<a href="https://www.baidu.com">
    <img src="../resource/image/img1.jpg" alt="请回答1988" title="悬停文字" width="300" height="200">
</a><br>

<p>
<a href="https://www.baidu.com">
    <img src="../resource/image/img1.jpg" alt="请回答1988" title="悬停文字" width="300" height="200">
</a><br>
</p>

<p>
    <a href="https://www.baidu.com">
        <img src="../resource/image/img1.jpg" alt="请回答1988" title="悬停文字" width="300" height="200">
    </a><br>
</p>


<!--锚链接
1.需要一个锚标记  <a name="标记名">
2.跳转到标记   使用#加标记名,<a href="#标记名"></a>
#
-->
<a href="#top">回到顶部</a>

<!--锚链接实现页面跳转-->
<!--博客中目录树的结构,即可用锚链接实现,点击跳转到指定位置-->
<a href="图像标签.html#down">跳到底部</a>

<!--功能性链接
邮件链接:mailto:
-->
<a href="mailto:2456871058@qq.com">点击联系我</a>

</body>
</html>

6.行内元素和块元素

  • 块元素
    • 无论内容多少,该元素独占一行
    • p、h1-h6
  • 行内元素
    • 内容撑开宽度,左右都是行内元素的可以排在一行
    • a、strong、em

7.列表标签

  • 列表就是信息资源的一种展示形式。它可以使信息结构化和条理化,并且以列表的样式展示出来,以便浏览者能更快捷的获得相应的信息。
  • 列表的分类:
    • 无序列表
    • 有序列表
    • 自定义列表
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>列表标签</title>
</head>
<body>

<!--有序列表
应用范围:试卷、问答...
-->
<ol>
    <li>Java</li>
    <li>Python</li>
    <li>运维</li>
    <li>前端</li>
    <li>C</li>
    <li>C++</li>
</ol>

<hr/>

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


<!--自定义列表
dl:标签
dt:列表名称
dd:列表内容
应用范围:公司网站底部
-->
<dl>
    <dt>课程</dt>
    <dd>Java</dd>
    <dd>Python</dd>
    <dd>C</dd>
    <dd>C++</dd>

    <dt>位置</dt>
    <dd>北京</dd>
    <dd>青岛</dd>
    <dd>上海</dd>
    <dd>广州</dd>
</dl>

</body>
</html>

8.表格标签

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

border:表格边框
colspam 跨列
rowspam 跨行

-->
<table border="1px">
    <tr>
        <!-- colspam 跨列 -->
        <td colspan="3">1-1</td>
        <td>1-4</td>
    </tr>
    <tr>
        <!-- rowspam 跨行 -->
        <td rowspan="2">2-1</td>
        <td>2-2</td>
        <td>2-3</td>
        <td>2-4</td>
    </tr>
    <tr>
        <td>3-2</td>
        <td>3-3</td>
        <td>3-4</td>
    </tr>
    <tr>
        <td>4-1</td>
        <td>4-2</td>
        <td>4-3</td>
        <td>4-4</td>
    </tr>
</table>

</body>
</html>

练习

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r85xw32I-1645798991512)(https://gitee.com/songjie001/typora_pictures/raw/master/image-20220225144749473.png)]

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Demo02</title>
</head>
<body>
<table border="2px">
  <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>99</td>
  </tr>
  <tr>
    <td>数学</td>
    <td>99</td>
  </tr>
</table>

</body>
</html>

9.媒体元素

  • 视频元素 video

  • 音频元素 audio

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>媒体元素</title>
</head>
<body>
<!--视频
src:资源路径
controls:显示控制台
autoplay:自动播放
-->
<video src="../resource/video/Vlog.mp4" controls autoplay></video>

<!--音频
src:资源路径

-->
<audio src="../resource/audio/GET.mp3" controls autoplay></audio>
</body>
</html>

10.页面结构分析

HTML笔记

注意命名规范!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>页面结构</title>
</head>
<body>
<header>
    <h2>网页头部</h2>
</header>
<nav>
    <h2>网页导航</h2>
</nav>
<section>
    <h2>网页主体</h2>
</section>
<footer>
    <h2>网页脚部</h2>
</footer>
</body>
</html>

11.iframe内联框架

在一个网站里嵌入另一个

<iframe src=“引用页面地址” name=“框架标识名” ><iframe>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>内联框架</title>
</head>
<body>

<!--内联框架iframe
src:地址
width:宽度
height:高度
name:可以将iframe作为一个容器,指定容器干什么
-->
<iframe src="" name="hello" frameborder="0" width="1000px" height="800px"></iframe>
<a href="列表标签.html" target="hello">点击跳转</a>
<!--target可以在指定的内敛框架窗口中打开,指定name-->


<iframe src="https://space.bilibili.com/95256449/channel/seriesdetail?sid=393820" frameborder="0" width="1000px"
        height="800px"></iframe>
<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>

12.表单

HTML笔记

表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理
method:post、get 提交方式
    get方式提交:可以在url中看到我们提交的信息,不安全,高效
    post方式提交:不可以在url中看到提交的信息,比较安全,可以提交大文件

HTML笔记

  • name属性必填,所有表单元素都是需要一个name,提交后通过name获得

  • value是默认值

  • type:指定元素的类型

    • text:文本框
    • password:密码框
    • radio:单选框
    • checkbox:多选框
    • submit:提交按钮
    • reset:重置按钮
    • button:普通按钮
    • image:图片按钮
    • file:文件域

文本框

input type=“text”
value = "请输入名字"         默认初始值
maxlength="8"               最长能写几个字符
size="30"                   文本框的宽度

单选框

input type=“radio”
value:单选框的值
name:表示组
     实现单选功能,要有组的属性,即name属性一样,表示一个组

多选框

input type="checkbox"
value:可选的值
name:表示组
checked:默认选中

按钮

1.自定义的普通按钮:input type="button"
            name;唯一标识
            value:按钮上显示的名称
2.图片按钮:input type="image"
            src:图片路径
3.提交按钮:input type="submit"
4.重置按钮:input type="reset"

列表框(下拉框)

select
option:表示每个选项
value:选项的值
selected:表示默认选中

文本域

textarea
name:唯一标识
cols:多少列
rows:多少行

文件域

input type="file"
name:通过name属性上传

简单验证

邮件验证
input type="email"
name:自定义的标识


url验证
input type="url"
name:自定义的标识


数字验证
input type="number"
name:自定义的标识
max:最大值
min:最小值
step:点击上下箭头的增加步长

滑块

input type="range"
min:最小值
max:最大值
step:增加步长
name:标识

搜索框

input type="search"
name:唯一标识

表格代码

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

<h1>注册</h1>

<!--表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理
method:post、get 提交方式
    get方式提交:可以在url中看到我们提交的信息,不安全,高效
    post方式提交:不可以在url中看到提交的信息,比较安全,可以提交大文件
-->
<form action="Demo01.html" method="get">

    <!--文本输入框
        input type=“text”
        value = "请输入名字"         默认初始值
        maxlength="8"               最长能写几个字符
        size="30"                   文本框的宽度
        -->
    <p>名字:<input type="text" name="username"></p>
    <!--密码输入框 input type=“password”     -->
    <p>密码:<input type="password" name="password"></p>


    <!--单选框
        input type=“radio”
        value:单选框的值
        name:表示组
             实现单选功能,要有组的属性,即name属性一样,表示一个组-->
    <p>性别:
        <input type="radio" value="boy" name="sex"/>男
        <input type="radio" value="girl" name="sex"/>女
    </p>


    <!--多选框
        input type="checkbox"
        value:可选的值
        name:表示组
        checked:默认选中
        -->
    <p>爱好:
        <input type="checkbox" value="sleep" name="hobby" checked>睡觉
        <input type="checkbox" value="code" name="hobby">代码
        <input type="checkbox" value="chat" name="hobby">聊天
        <input type="checkbox" value="play game" name="hobby">游戏
    </p>

    <!--按钮
        1.自定义的普通按钮:input type="button"
                    name;唯一标识
                    value:按钮上显示的名称
        2.图片按钮:input type="image"
                    src:图片路径
        3.提交按钮:input type="submit"
        4.重置按钮:input type="reset"
        -->
    <p>按钮:
        <input type="button" name="btn1" value="点击变长">
        <input type="image" src="../resource/image/img1.jpg" name="btn2">
    </p>
    <p>
        <input type="submit">
        <input type="reset">
    </p>


    <!--下拉框、列表框
        select
        option:表示每个选项
        value:选项的值
        selected:表示默认选中
        -->
    <p>国家:
        <select name="列表名称">
            <option value="China" selected>中国</option>
            <option value="USA">美国</option>
            <option value="Russia">俄罗斯</option>
            <option value="Ukraine">乌克兰</option>
        </select>
    </p>


    <!--文本域
        textarea
        name:唯一标识
        cols:多少列
        rows:多少行
            -->
    <p>反馈:
        <textarea name="textarea" cols="50" rows="10">文本内容</textarea>
    </p>


    <!--文件域
        input type="file"
        name:通过name属性上传
        -->
    <input type="file" name="files">
    <input type="button" name="btn3">上传


    <!--邮件验证
        input type="email"
        name:自定义的标识
        -->
    <p>邮箱:
        <input type="email" name="email">
    </p>

    <!--url验证
        input type="url"
        name:自定义的标识
        -->
    <p>URL:
        <input type="url" name="url">
    </p>

    <!--数字验证
        input type="number"
        name:自定义的标识
        max:最大值
        min:最小值
        step:点击上下箭头的增加步长
        -->
    <p>数字:
        <input type="number" name="number" max="100" min="0" step="10">
    </p>

    <!--滑块
        input type="range"
        min:最小值
        max:最大值
        step:增加步长
        name:标识
        -->
    <p>音量:
        <input type="range" min="0" max="100" step="2" name="voice">

    </p>

    <!--搜索框
        input type="search"
        name:唯一标识
        -->
    <input type="search" name="search">


</form>
</body>
</html>

13.表单的应用

  • 隐藏 hidden
    • 可以通过隐藏域传递一些默认值
  • 只读 readonly
  • 禁用 disabled

增强鼠标可用性

<!--增强鼠标可用性:点击文字即可以锁定到输入框-->
<p>
    <label for="mark">你点我试试</label>
    <input type="text" id="mark">
</p>

14.表单初级验证

  • 常用方式:
    • placeholder:提示信息
    • required:非空判断,表示元素不能为空,必须填
    • pattern:正则表达式
<p>名字:
       <input type="text" name="username" placeholder="请输入用户名" required>
		<input type="email" name="email" pattern="^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$">
 </p>
上一篇:守破离


下一篇:Day13 Java流程控制的选择结构之switch