B站黑马前端HTMLDay1_p1-p60学习笔记

389 阅读11分钟

HTML学习记录

学习网站:B站黑马前端HTML内容

Day1 前端HTML讲解p1-p60

1.1 网页

  • 什么是网页

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

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

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

  • 什么是HTML

HTML指的是超文本标记语言,是用来描述网页的一种语言。它不是编程语言,而是一种标记语言,是一套标记标签。

所谓超文本的含义:

1)它可以加入图片、声音、动画、多媒体等内容(超越了文本限制)。

2)它可以从一个文件跳转到另一个文件,与世界各地主机的文件连接(超级链接文本)。

  • 网页的形成

网页由网页元素组成,利用html标签表述,通过浏览器的解析来展示给用户。

1.2 常用浏览器

  • 常用浏览器

浏览器是网页显示、运行的平台。常用的浏览器有IE、火狐(FireFox)、谷歌(Chrome)、Safari以及Opera等。

  • 浏览器内核

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

1.3 Web标准(重点)

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

  • 为什么需要标准

发展前景、广泛的设备访问、搜索引擎访问、降低网站流量费用、使网站易于维护、提高页面浏览速度。

  • Web标准的构成

主要包括结构(Structure)表现行为三个方面相分离。

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

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

行为(动作):指的是网页模型的定义以及交互的编写,主要是Javascript。

1.4 HTML标签

  • 基本语法概述

HTML标签是由尖括号包围的关键词,例如;

通常是成对出现的,称为双标签

有些特殊的标签必须是单个标签,称为单标签

  • 第一个HTML页面

image.png

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>我利用vscode创建的第一个页面</title>
</head>
<body>
    写代码是一件非常快乐的事情  happy
</body>
</html>
  • 文档类型声明标签

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

<!DOCTYPE html> 这句话的代码的意思是:当前页面采取的是HTML5版本来显示网页

注意:

1.声明位于文档中的最前面的位置,处于标签之前。

2.不是一个HTML标签,他就是文档类型声明标签。

  • 代表语言种类

  • 字符集

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

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

<meta charset="UTF-8">

charset常用的值:GB2312、BIG5、GBK和UTF-8,其中UTF-8也被称为万国码,基本包含了全世界所有的国家需要用到的字符。尽量写成统一标准的”UTF-8“,不要写成utf8或UTF8.

1.5 HTML常用标签

  • 标签语义

学习标签是有技巧的,重点是记住每个标签的语义。简单理解就是标签的含义,即这个标签用来干嘛的。根据标签的语义,在合适的地方给一个最为合理的标签,可以让页面结构更清晰。

image.png

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

为了使网页更具有语义化,我们经常会在页面中用到标题标签。HTML提供了6个等级的网页标题,即<h1>-<h6>。作为标题使用,并且依据重要性递减。

  • 段落和换行标签(重要)

在网页中,要把文字有条理的显示出来,就需要将这些问题分段提示。在HTML标签中<p>标签用于定义段落,它可以将网页分为若干个段落。可以把html文档分割成若干段落。

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

特点:

  1. 文本在一个段落中会根据浏览器窗口的大小自动换行。
  2. 段落和段落之间留有空隙。

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

 <br/>

特点:

  1. 换行是一个单标签
  2. br标签只是简单开始新的一行,跟段落不一样,段落之间会有垂直的间距。
  • 文本格式化标签

在网页中,有时需要为文字设置粗体斜体下划线等效果,这时就需要用到HTML中的文本格式化标签,使得文字以特殊的方式显示。

image.png

  • <div>和<span>标签

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

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

image.png

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

特点:

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

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

1.6 图像标签和路径

  • 图像标签

在HTML标签中,标签用于定义HTML页面中的图像。

<img src = "图像url" / >

src用于指定图像文件的路劲和文件名。

image.png

图像标签属性注意点:

1)图像可以有多个属性,必须写在img的后面。

2)属性不分顺序,采用键值对方式,属性与属性之间空格分隔。

3)src是必须写的属性

  • 路径相关知识

1)目录文件夹和根目录

目录文件夹:即存放页面所需的相关素材。

根目录:双击打开Web第一层就是根目录。

2)相对路径:

以引用文件所在位置为参考基础,从而建立出的目录路径。同级直接用,上一级为.../

3)绝对路径:

是指目录下的绝对位置,直接到达目标位置,通常是从盘符开始的路径。其中斜杠为\

1.7 超链接标签

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

href:用于链接目标的url地址,当为标签应用href属性时,它就具有了超链接的功能。

target:指定链接页面的打开方式,其中_ self为默认值,_ blank为在新窗口中打开。

	<h4>1.外部链接</h4>
    <a href="http://www.qq.com" target="_blank"> 腾讯</a> 
    <a href="http://www.itcast.cn" target="_blank">传智播客</a>

    <h4>2.内部链接: 网站内部页面之间的相互链接</h4>
    <a href="gongsijianjie.html" target="_blank">公司简介</a>

    <h4>3.空链接:#</h4>
    <a href="#">公司地址</a>

    <h4>4.下载链接: 地址链接的是 文件 .exe 或者是 zip 等压缩包形式</h4>
    <a href="img.zip">下载文件</a>

    <h4>5.网页元素的链接</h4>
    <a href="http://www.baidu.com"><img src="img.jpg" /></a>

1.8 锚点链接

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

3 <a href="#live">个人生活</a><br />
4 <a href="#zuopin">主要作品</a><br />

<h3 id="live">个人生活</h3>
<h3 id="zuopin">主要作品</h3>

1.9 注释标签与特殊字符

添加注释是为了更好地解释代码的功能,便于相关人员理解和阅读代码,程序是不会执行注释内容的。

<!-- 我想喝手磨咖啡 -->  ctrl + /

image.png

1.10 表格标签

  • 表格的作用

表格主要用于显示、展示数据,因为它可以让数据展示的非常的规律,可读性非常好。特别是后台展示数据的时候,能够熟练运用表格就显得很重要。一个清爽简约的表格能够把复杂的数据表现得很有条理。

	<table>
        <tr><td>姓名</td>  <td>性别</td> <td> 年龄 </td></tr>
        <tr><td>刘德华</td>  <td></td> <td> 56 </td></tr>
        <tr><td>张学友</td>  <td></td> <td> 58 </td></tr>
        <tr><td>郭富城</td>  <td></td> <td> 51 </td></tr>
        <tr><td>黎明</td>  <td></td> <td> 57 </td></tr>
    </table>
  • 表头单元格标签

image.png

表头单元格也是单元格,常用于表格第一行,突出重要性,表格中的文字加粗居中显示。

	<table>
        <tr><th>姓名</th>  <th>性别</th> <th> 年龄 </th></tr>
        <tr><td>刘德华</td>  <td>男</td> <td> 56 </td></tr>
        <tr><td>张学友</td>  <td>男</td> <td> 58 </td></tr>
        <tr><td>郭富城</td>  <td>男</td> <td> 51 </td></tr>
        <tr><td>黎明</td>  <td>男</td> <td> 57 </td></tr>
    </table>
  • 表格属性 - CSS设置即可

image.png

<!-- 这些属性要写到表格标签table 里面去 -->
    <table align="center" border="1" cellpadding="0" cellspacing="0" width="500" height="249">
        <tr><th>姓名</th>  <th>性别</th> <th> 年龄 </th></tr>
        <tr><td>刘德华</td>  <td>男</td> <td> 56 </td></tr>
        <tr><td>张学友</td>  <td>男</td> <td> 58 </td></tr>
        <tr><td>郭富城</td>  <td>男</td> <td> 51 </td></tr>
        <tr><td>黎明</td>  <td>男</td> <td> 57 </td></tr>
    </table>

image.png

<table align="center" width="500" height="249" border="1" cellspacing="0">
    <thead>
        <tr>
            <th>排名</th>
            <th>关键词</th>
            <th>趋势</th>
            <th>进入搜索</th>
            <th>最近七日</th>
            <th>相关链接</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>1</td>
            <td>鬼吹灯</td>
            <td><img src="down.jpg"></td>
            <td>456</td>
            <td>123</td>
            <td> <a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a> </td>
        </tr>

        <tr>
                <td>1</td>
                <td>鬼吹灯</td>
                <td><img src="down.jpg"></td>
                <td>456</td>
                <td>123</td>
                <td> <a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a> </td>
        </tr>
        <tr>
                <td>3</td>
                <td>西游记</td>
                <td><img src="up.jpg"></td>
                <td>456</td>
                <td>123</td>
                <td> <a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a> </td>
        </tr>
        <tr>
                <td>1</td>
                <td>鬼吹灯</td>
                <td><img src="down.jpg"></td>
                <td>456</td>
                <td>123</td>
                <td> <a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a> </td>
        </tr>
        <tr>
                <td>1</td>
                <td>鬼吹灯</td>
                <td><img src="down.jpg"></td>
                <td>456</td>
                <td>123</td>
                <td> <a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a> </td>
        </tr>
        <tr>
                <td>1</td>
                <td>鬼吹灯</td>
                <td><img src="down.jpg"></td>
                <td>456</td>
                <td>123</td>
                <td> <a href="#">贴吧</a> <a href="#">图片</a> <a href="#">百科</a> </td>
        </tr>
    </tbody>           
    </table>
  • 表格结构标签

使用场景:因为表格可能很长,为了更好的表示表格的语义,可以将表格分割成表格头部和表格主体两大部分。在表格标签中,分别用:标签表格的头部区域、标签表格的主题区域,这样可以更好的分析表格结构。

  • 合并单元格
<table width="500" height="249" border="1" cellspacing="0">
        <tr>
            <td></td>
            <td colspan="2"></td>
           
        </tr>
        <tr>
            <td rowspan="2"></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
           
            <td></td>
            <td></td>
        </tr>
    </table>

image.png

1.11 列表标签

表格是用来展示数据的,那么列表就是用来展示的。

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

根据使用情景不同,列表可以分为三大类:无序列表、有序列表和自定义列表。

image.png image.png

  • 无序列表
	<ul>
        <li>榴莲</li>
        <li>臭豆腐</li>
        <li>鲱鱼罐头</li>
        <li>
            <p>123</p>
        </li>
    </ul>

无序列表各个列表项之间没有顺序之分,是并列的;

<ul>里面允许存放<li>标签,防止其他元素是不允许的;

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

  • 有序列表
	<ol>
        <li>刘德华 10000</li>
        <li>刘若英 1000</li>
        <li>pink老师 1</li>
    </ol>

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

  • 自定义列表

image.png

	<dl>
        <dt>关注我们</dt>
        <dd>新浪微博</dd>
        <dd>官方微信</dd>
        <dd>联系我们</dd>
    </dl>

1.12 表单标签

image.png

使用表单是为了收集用户信息;在HTML中,一个完整的表单通常由表单域表单控件提示信息三个部分组成。

  • 表单域

表单域是指一个包含表单元素的区域;在HTML标签中,

标签用于定义表单域,以实现用户信息的收集和传递。会把它范围内的表单元素信息提交给服务器。

 <form action="demo.php" method="POST" name="name1">

 </form>

image.png

  • 表单控件(表单元素)

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

  1. input输入表单元素
  2. select下拉表单元素
  3. textarea文本域元素
  • input输入表单元素

input标签包含一个type属性,根据不同的type属性,输入字段可以有多种形式:文本、复选框、文本控件、单选按钮、按钮等。

单选框 + name属性相同 = 只能选择一个单选项。

image.png

 <form action="xxx.php" method="get">
         <!-- text 文本框 用户可以里面输入任何文字 -->
        用户名: <input type="text" name="username" value="请输入用户名" maxlength="6">   <br> 
     
        <!-- password 密码框 用户看不见输入的密码 -->
        密码: <input type="password" name="pwd" >  <br> 
        
     	<!-- radio 单选按钮  可以实现多选一 -->
        <!-- name 是表单元素名字 这里性别单选按钮必须有相同的名字name 才可以实现多选1 -->
        <!-- 单选按钮和复选框可以设置checked 属性, 当页面打开的时候就可以默认选中这个按钮 -->
        性别: 男 <input type="radio" name="sex" value="男"><input type="radio" name="sex" value="女" checked="checked"> 人妖   <input type="radio" name="sex" value="人妖">   <br> 
        
     	<!-- checkbox 复选框  可以实现多选 -->
        爱好: 吃饭 <input type="checkbox" name="hobby" value="吃饭"> 睡觉 <input type="checkbox" name="hobby">  打豆豆 <input type="checkbox" name="hobby" checked="checked"> 
        
     	<br> 
        <!-- 点击了提交按钮,可以把 表单域 form 里面的表单元素 里面的值 提交给后台服务器 -->
        <input type="submit" value="免费注册">
     
        <!-- 重置按钮可以还原表单元素初始的默认状态 -->
        <input type="reset" value="重新填写">
     
        <!-- 普通按钮 button  后期结合js 搭配使用-->
        <input type="button" value="获取短信验证码"> <br>
     
        <!-- 文件域 使用场景 上传文件使用的 -->
        上传头像:  <input type="file" >
</form>

image.png

单选按钮和复选框需要有相同的name值单选按钮和复选框可以设置默认选择,使用checked属性;提交常用与JS搭配使用。

  • label标签

label标签为input元素定义标注(标签);

label标签用于绑定一个表单元素,当点击label标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验。for + id 的值需要相同。

	<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>
  • select下拉表单

select至少包含一对option;option中使用selected = selected表示选中元素。

<form>
    籍贯: 
    <select>
        <option>山东</option>
        <option>北京</option>
        <option>天津</option>
        <option selected="selected">火星</option>
    </select>
</form>

image.png

  • textarea文本域表单元素

使用场景:当用户输入内容较多的情况下,我们就不能使用文本框表单了,此时我们可以使用/标签。在表单元素中,/标签是用于定义多行文本输入的控件;常用于留言板,评论。

image.png

<form>
        今日反馈:
        <textarea cols="50" rows="5">pink老师,我知道这个反馈留言是textarea来做的 </textarea>
    </form>

1.13 表单综合案例 p56-p59

image.png

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>综合案例-注册页面</title>
</head>
<body>
    <h4>青春不常在,抓紧谈恋爱</h4>
    <table width="600" >
        <!-- 第一行 -->
        <tr>
            <td>性别:</td>
            <td>
                <input type="radio" name="sex" id="nan"> <label for="nan"> <img src="images/man.jpg" ></label>  
                <input type="radio" name="sex" id="nv"> <label for="nv"><img src="images/women.jpg" ></label> 
            </td>
        </tr>
        <!-- 第二行 -->
        <tr>
            <td>生日:</td>
            <td>
                <select>
                    <option>--请选择年份--</option>
                    <option>2001</option>
                    <option>2002</option>
                    <option>2003</option>
                </select>
                <select>
                        <option>--请选择月份--</option>
                        <option>1</option>
                        <option>2</option>
                        <option>3</option>
                </select>
                <select>
                        <option>--请选择日--</option>
                        <option>1</option>
                        <option>2</option>
                        <option>3</option>
                </select>
        
            </td>
        </tr>
        <!-- 第三行 -->
        <tr>
            <td>所在地区</td>
            <td><input type="text" value="北京思密达"></td>
        </tr>
        <!-- 第四行 -->
        <tr>
            <td>婚姻状况:</td>
            <td>
                    <input type="radio" name="marry" checked="checked">未婚  <input type="radio" name="marry">  已婚  <input type="radio" name="marry"> 离婚
            </td>
        </tr>
         <!-- 第五行 -->
         <tr>
             <td>学历:</td>
             <td><input type="text" value="博士后"></td>
         </tr>
          <!-- 第六行 -->
        <tr>
            <td>喜欢的类型:</td>
            <td>
                <input type="checkbox" name="love" > 妩媚的 
                <input type="checkbox" name="love" > 可爱的 
                <input type="checkbox" name="love" > 小鲜肉 
                <input type="checkbox" name="love" > 老腊肉 
                <input type="checkbox" name="love"  checked="checked"> 都喜欢 
            </td>
        </tr>
         <!-- 第七行 -->
        <tr>
            <td>个人介绍</td>
            <td>
                <textarea>个人简介</textarea>
            </td>
        </tr>
        <!-- 第八行 -->
        <tr>
            <td></td>
            <td>
                <input type="submit" value="免费注册" >
            </td>
        </tr>
        <tr>
                <td></td>
                <td>
                    <input type="checkbox"  checked="checked">    我同意注册条款和会员加入标准
                </td>
        </tr>
        <tr>
                <td></td>
                <td>
                    <a href="#" > 我是会员,立即登录</a>
                </td>
        </tr>
        <tr>
                <td></td>
                <td>
                    <h5>我承诺</h5>
                    <ul>
                        <li>年满18岁、单身</li>
                        <li>抱着严肃的态度</li>
                        <li>真诚寻找另一半</li>
                    </ul>
                </td>
        </tr>
           
    </table>
</body>
</html>

1.14 学会查阅文档

查阅文档是一个非常好的学习方法:W3Cschool、MDN开发者权威网站中搜查。