HTML

基础认知

认识网页

问题1:网页由哪些部分组成?

文字、图片、音频、视频、超链接

问题2:我们看到的网页背后本质是什么?

前端程序员写的代码

问题3:前端的代码是通过什么软件转换成用户眼中的页面的?

通过浏览器转化(解析和渲染)成用户看到的网页

常见的五大浏览器

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

前端工程师常用的是谷歌浏览器

web标准

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

web标准的三个构成 :

结构 : html 页面元素

样式 : css 页面样式

行为 :JavaScript 页面交互的动态效果

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

HTML的中文译名叫做超文本标记语言

HTML中是通过HTML标签来对网页中的文本、图片、音频、视频等内容进行描述的

页面固定结构

html页面固定结构包括

整体、头部、标题、主体

html标签:网页的整体

head标签:网页的头部

body标签:网页的身体

title标签:网页的标题

<!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>

前端开发工具 VS Code

开发工具有很多: Visual Studio Code 、 Webstorm 、 Sublime 、Dreamweaver、 Hbuilder

前端开发神器:VS Code → 速度快、体积小、插件多

vs code 的基本快捷键

<!-- !+输入 快捷框架 -->
<!-- ctrl+s 快捷保存 -->
<!-- alt+b 快捷查看网页 -->
<!-- ctrl+x  剪切  ctrl+c  复制   ctrl+v  粘贴 -->
<!-- ctrl+/  注释快捷键 -->浏览器执行代码时会忽略所有的注释,主要用来帮助开发人员理解代码
<!-- ctrl+a 全选 -->

html标签的构成,属性和关系

html标签由单标签和双标签组成 ,双标签分为开始标签和结束标签,单标签只要一个标签

html标签的属性

1.标签的属性写在开始标签内部

2.标签上可以同时存在多个属性

3.属性之间以空格隔开

4.标签名与属性之间必须以空格隔开

5.属性之间没有顺序之分

html标签的关系

父子关系(嵌套关系)

兄弟关系(并列关系)

<body>
    <p>这是一个双标签</p>    
    <br /><!-- 这是一个单标签 -->
    <p class="pink one" style="color: red">标签的属性写在开始标签里</p>
    <!-- 可以写多个属性,同一个属性的值用空格隔开 -->
    <!-- 同一个标签有多个类名,可以用空格隔开,style有多个样式,用分号隔开-->
    <!-- 标签关系 -->
    <p>
        <span>和p标签是父子关系</span>
        <span>和span标签是并列关系</span>
    </p>
  </body>

html标签

排版标签

标题标签 h1 - h6

段落标签 p

换行标签 br

水平线标签 hr

    <h1>这是一个标题标签</h1>
    <h2>这是一个标题标签</h2>
    <h3>这是一个标题标签</h3>
    <h4>这是一个标题标签</h4>
    <h5>这是一个标题标签</h5>
    <h6>这是一个标题标签</h6>
    <!-- h1~h6是标题标签  字体加粗  独占一行  h1到h6字体从大到小-->
    <p>这是一个段落标签</p>
    <!-- 独占一行  段落之间有间隙  p标签和h标签是块级元素-->
    <br>
    <!-- 强制换行标签 -->
    <hr>
    <!-- 水平线标签 在页面中显示一条水平线-->

文本格式化标签

加粗、下划线、倾斜、删除线

    <strong>加粗</strong>
    <em>倾斜</em>
    <ins>下划线</ins>
    <del>删除线</del>
    <!-- 上面这四个标签语义更强烈,建议使用 -->
    <b>加粗</b>
    <i>倾斜</i>
    <u>下划线</u>
    <s>删除线</s>
    <!-- 行内元素 -->

媒体标签

图片标签

路径

音频标签

视频标签

<img src="./微信图片_20220316222540.jpg" alt="这是一张照片" title="这是一片云" width="300px">
<!-- img是图片标签  src是图片的路径  alt是图片未加载出来时显示的 title是鼠标悬停在图片上显示的 -->
<!-- width是宽度  height是高度 -->
<!-- 如果只设置width或height中的一个,另一个没设置的会自动等比例缩放(此时图片不会变形)  -->
<!-- 如果同时设置了width和height两个,若设置不当此时图片可能会变形 -->
<!-- 路径分为绝对路径和相对路径 -->
<!-- 绝对路径有两种  一种是以盘符开头  还有一种是完整的网络地址 -->
<!-- 相对路径有三种   分别是上级目录  同级目录  下级目录 -->
<!-- 同级目录  ./+文件名 -->
<!-- 上级目录  ../+文件名   有多少上级就写多少个../ -->
<!-- 下级目录   ./文件夹/文件名 -->
<br>
<br>
<audio src="./video.mp4" controls autoplay loop></audio>
<!-- audio 是音频标签  controls是显示播放的控件  部分浏览器不支持 -->
<!-- autoplay 是自动播放标签  loop是循环播放标签 -->
<!-- 音频标签目前支持三种格式:MP3、Wav、Ogg -->
<br><br>
<video src="./video.mp4" controls autoplay loop></video>
<!-- video是视频标签 -->
<!-- 视频标签目前支持三种格式:MP4 、WebM 、Ogg -->

链接标签

a标签 或者说超链接 点击之后跳转到另一个页面

    <a href="#" target="_blank">这是一个链接</a>
    <!-- a标签是一个链接标签   href=网址 -->
    <!-- a标签默认文字有下划线   -->
    <!-- a标签从未点击过,默认文字显示蓝色 -->
    <!-- a标签点击过之后,文字显示为紫色(清除浏览器历史记录可恢复蓝色)  -->
    <!-- target是目标网页的打开形式  有两种-->
    <!-- _self是默认当前网页打开 -->
    <!-- _blank在新窗口跳转并保留原网页 -->
    <!-- #代表空链接 -->
    <!-- 双标签,内部可以包裹内容 -->

列表标签

无序列表

<ul>
        <li>无序列表</li>
        <li>无序列表</li>
        <li>无序列表</li>
        <li>无序列表</li>
        <!-- ul标签中只允许包含li标签  li标签可以包含任意内容,包括ul标签 -->
        <!-- 列表前默认自带黑色小圆点 -->
    </ul>

有序列表

<ol>
        <li>有序列表</li>
        <li>有序列表</li>
        <li>有序列表</li>
        <li>有序列表</li>
        <!-- 列表的每一项前默认显示序号标识 -->
        <!-- ol标签中只允许包含li标签  li标签可以包含任意内容 -->
    </ol>

自定义列表

<dl>
        <!-- dl是列表的整体 -->
        <dt>自定义列表主题</dt>
        <dd>自定义列表每一项</dd>
        <dd>自定义列表每一项</dd>
        <dd>自定义列表每一项</dd>
        <!-- dl标签中只允许包含dt/dd标签 dt/dd标签可以包含任意内容 -->
        <!-- dd前会默认显示缩进效果 -->
        <!-- dd和dt是并列关系 -->
        <!-- 无序列表最常用,有序列表偶尔用,自定义列表底部导航用 -->
    </dl>

表格标签

注意点:

caption标签书写在table标签内部

th标签书写在tr标签内部(用于替换td标签)

<table border="3" width="400px" height="400px">
        <!-- table代表整个表格 border代表表格的边框宽度 -->
        <!-- table>tr>td  tr代表行  td代表单元格 -->
        <caption>
            <h2>这是一个表格</h2>
        </caption>
        <!-- caption是指表格标题,默认表格顶部居中 -->
        <thead>
            <tr>
                <th>标签</th>
                <th>标签</th>
                <th>标签</th>
                <th>标签</th>
                <!-- th是指表头单元格 文字加粗并居中显示  th代替td-->
            </tr>
        </thead>
        <!-- thead代表表格的头部 -->
        <tbody>
            <tr>
                <td>第一行</td>
                <td rowspan="2">第一行和第二行</td>
                <td>第一行</td>
                <td>第一行</td>
            </tr>
            <tr>
                <td>第二行</td>

                <td>第二行</td>
                <td>第二行</td>
            </tr>
        </tbody>
        <!-- tbody代表表格的主体 -->
        <tfoot>
            <tr>
                <td>底部</td>
                <td colspan="3">底部</td>

            </tr>
        </tfoot>
        <!-- tfoot代表表格的底部 -->
    </table>
<!-- rowspan 和 colspen 在有tbody和tfoot的情况下,只能影响对应区域的合并 -->

合并单元格

rowspan:跨行合并→垂直方向合并 上下合并→只保留最上的,删除其他

colspan:跨列合并→水平方向合并 左右合并→只保留最左的,删除其他

属性值为合并单元格的个数

表单标签

input标签和button标签

input标签可以通过type属性值的不同,展示不同效果

type = ‘’text‘’ 的常用属性

placeholder 占位符,提示用户输入内容的文本

value属性:用户输入的内容,提交之后会发送给后端服务器 ,如果提前设置好了,则是内容的默认值

name属性:当前控件的含义,提交之后可以告诉后端发送过去的数据是什么含义

后端接收到数据的格式是:name的属性值 = value的属性值

text      文本框,用于输入单行文本  
password  密码框用于输入密码暗文  常用属性 placeholder
radio     单选框,用于多选一    
           常用属性  checked 默认选中 单选框只能设置一个, name 分组 同一个name默认为一组,一组只有一个同时被选中
checkbox  多选框,用于多选多   常用属性  checked 默认选中
file      文件选择,用于之后上传文件     常用属性  multiple  多文件选择

如果需要实现以下按钮功能,需要配合form标签使用 
form使用方法:用form标签把表单标签一起包裹起来即可
button标签常用属性
submit    提交按钮,用于提交
reset     重置按钮用于重置
button    普通按钮,默认无功能,之后配合js添加功能

谷歌浏览器中button默认是提交按钮

button标签是双标签,更便于包裹其他内容:文字、图片等

select下拉菜单标签

select标签:下拉菜单的整体

option标签:下拉菜单的每一项

常见属性: selected:下拉菜单的默认选中

textarea文本域标签

常见属性:

cols:规定了文本域内可见宽度

rows:规定了文本域内可见行数

注意点:

右下角可以拖拽改变大小

实际开发时针对于样式效果推荐用CSS设置

label标签

使用方法①:

  1. 使用label标签把内容(如:文本)包裹起来

  2. 在表单标签上添加id属性

  3. 在label标签的for属性中设置对应的id属性值

使用方法②:

  1. 直接使用label标签把内容(如:文本)和表单标签一起包裹起来

  2. 需要把label标签的for属性删除即可

<form>
      昵称:<input type="text" placeholder="请输入你的昵称" /> <br /><br />
      <!-- form指的是表单 -->
      <!-- input是指表单标签  type是属性值 -->
      <!-- text 文本  placeholder是占位符 -->
      密码:<input type="password" placeholder="请输入你的密码" />
      <!-- password是指密码暗文输入 -->
      <br /><br />
      性别:
      <label><input type="radio" name="gender" />男 </label>
      <label><input type="radio" name="gender" />女</label>
      <label><input type="radio" name="gender" checked />保密</label>
      <!-- label是绑定标签 -->
      <!-- 使用label标签把内容(如:文本)包裹起来,在表单标签上添加id属性,在label标签的for属性中设置对应的id属性值 -->
      <!-- 直接使用label标签把内容(如:文本)和表单标签一起包裹起来,需要把label标签的for属性删除即可 -->
      <!-- radio是单选  name设置单选互斥 checked是默认选中 -->
      <br /><br />
      喜欢的类型:
      <label><input type="checkbox" />性感</label>
      <label><input type="checkbox" checked />温柔</label>
      <label><input type="checkbox" checked />可爱</label>
      <label><input type="checkbox" />御姐</label>
      <label><input type="checkbox" />萝莉</label>
      <!-- checkbox是多选 -->
      <br /><br />
      城市:
      <select>
        <option>北京</option>
        <option>上海</option>
        <option selected>深圳</option>
        <option>广州</option>
      </select>
      <!-- select是下拉框 option是每一项  selected是指默认选中 -->
      <br />
      <br />
      自我介绍:
      <br /><br />
      <textarea cols="40" rows="10"></textarea>
      <!-- textarea是文本域  cols是每行字符数 rows是行数 -->
      <br /><br />
      <input type="file" multiple />
      <!-- file是指文件上传  mutiple是多文件上传 -->
      <br /><br />
      <input type="submit" />
      <!-- submit是提交 -->
      <br /><br />
      <input type="reset" />
      <!-- reset是重置 -->
      <br /><br />
      <input type="button" value="这是一个普通按钮" />
      <br /><br />
      <button>
        <img src="./微信图片_20220325211732.png" width="100p;x" />
      </button>
      <!-- button第二种用法 双标签 可以包含图片 -->
      <!-- header:网页头部 -->
      <!-- nav:网页导航 -->
      <!-- footer:网页底部 -->
      <!-- aside:网页侧边栏 -->
      <!-- section:网页区块 -->
      <!-- article:网页文章  -->
      <!-- 字符实体: &nbsp; 空格    &gt;大于号    &lt;小于号 -->
    </form>

语义化标签

没有语义的布局标签-div和span

div标签:一行只显示一个(独占一行)

span标签:一行可以显示多个

常见的有语义的布局标签

header:网页头部

nav:网页导航

footer:网页底部

aside:网页侧边栏

section:网页区块

article:网页文章

字符实体

HTML的空格合并现象

如果在html代码中同时并列出现多个空格、换行、缩进等,最终浏览器只会解析出一个空格

常见字符实体

&nbsp;  空格    
&gt;    大于号   
&lt;    小于号
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341