一篇文章讲清楚html css js三件套之html

目录

HTML

HTML发展史

HTML概念和语法

常见的HTML标签:

 HTML 调试

错误信息分析

HTML文档结构

HTML5的新特性

结论

HTML

HTML是网页的基础,它是一种标记语言,用于定义网页的结构和内容。HTML标签告诉浏览器如何显示网页元素,例如段落、标题、列表、链接、图片和表格等。

HTML发展史

  • 1990年:Tim Berners-Lee提出了超文本的概念,这是HTML的前身。
  • 1991年:HTML作为SGML的一个应用被正式定义。
  • 1993年:IETF开始制定HTML规范。
  • 1995年:HTML 2.0发布。
  • 1994年:W3C(万维网联盟)成立,致力于推动Web标准的发展。
  • 1997年:HTML 3.2发布。
  • 1999年:HTML 4.0发布,2000年成为ISO标准。
  • 2000年代初:W3C转向XHTML,但随后又重新关注HTML。
  • 2004年:WHATWG成立,独立于W3C之外。
  • 2008年:W3C和WHATWG合作,发布了HTML5的第一份草案。
  • 2014年:HTML5作为官方标准发布。

HTML概念和语法

  • 元素:HTML文档由多个元素组成,每个元素由开始标签和结束标签定义。
  • 标签:HTML标签用尖括号<>包围,例如<p>...</p>
  • 属性:HTML标签可以包含属性,属性提供关于元素的额外信息,通常在开始标签中定义,例如<img src="image.jpg" alt="描述">
  • 空标签:某些HTML标签不需要结束标签,如<img><br><hr>等。
  • 扩展名:HTML文件通常以.html.htm结尾。
  • 备注: HTML 标签不区分大小写。也就是说,输入标签时既可以使用大写字母也可以使用小写字母。例如,标签 <title> 可以写作 <title>、<TITLE>、<Title>、<TiTlE> 等,也都可以正常工作。不过,从一致性、可读性来说,最好仅使用小写字母。

常见的HTML标签:

以下是一些常见的HTML标签及其用法示例:

  1. <p> - 段落标签

    <p>这是一个段落。</p>
  2. <h1><h6> - 标题标签,<h1>是最高级别的标题

    <h1>这是主标题</h1>
    <h2>这是副标题</h2>
  3. <a> - 超链接标签,用于链接到另一个页面或锚点

    <a href="https://www.example.com">访问示例网站</a>
  4. <img> - 图片标签,用于在网页上显示图片

    <img src="image.jpg" alt="示例图片">
  5. <ul><ol> - 无序列表和有序列表

    <ul><li>列表项1</li><li>列表项2</li>
    </ul>
    <ol><li>第一项</li><li>第二项</li>
    </ol>
  6. <li> - 列表项标签,用于在列表中创建单个列表项

    <ul><li>这是列表中的一个项目。</li>
    </ul>
  7. <strong> - 强调标签,表示文本非常重要

    <strong>这很重要!</strong>
  8. <em> - 斜体标签,表示文本需要被强调

    <em>这是斜体文本。</em>
  9. <b> - 粗体标签,使文本显示为粗体

    <b>这是粗体文本。</b>
  10. <i> - 斜体标签,用于显示斜体文本

    <i>这是斜体文本。</i>
  11. <u> - 下划线标签,为文本添加下划线

    <u>这是带下划线的文本。</u>
  12. <br> - 换行标签,用于在文本中创建换行

    这是第一行。<br>这是第二行。
  13. <hr> - 水平线标签,用于在页面上创建一条水平线

    <hr>
  14. <table> - 表格标签,用于创建表格

    <table><tr><th>标题1</th><th>标题2</th></tr><tr><td>数据1</td><td>数据2</td></tr>
    </table>
  15. <tr> - 表格行标签,用于在表格中创建行

  16. <td><th> - 表格单元格标签,<td>用于数据,<th>用于表头

  17. <form> - 表单标签,用于创建用户输入表单

    <form action="/submit" method="post"><label for="name">姓名:</label><input type="text" id="name" name="name"><input type="submit" value="提交">
    </form>
  18. <input> - 输入字段标签,用于创建不同类型的输入控件

    <input type="text" name="username" placeholder="输入用户名">
  19. <button> - 按钮标签,用于创建可点击的按钮

    <button type="button">点击我</button>
  20. <div> - 区块标签,用于布局和分组元素

    <div>这是一个区块元素。</div>

这些只是HTML中众多标签的一部分。每种标签都有其特定的用途和属性,通过组合使用这些标签,可以创建结构丰富、功能多样的网页。

为了实现语义化标记,HTML 提供了明确这些区段的专用标签,例如:

<header>:页眉。
<nav>:导航栏。
<main>:主内容。主内容中还可以有各种子内容区段,可用<article>、<section> 和 <div> 等元素表示。
<aside>:侧边栏,经常嵌套在 <main> 中。
<footer>:页脚。

<!doctype html>
<html><head><meta charset="utf-8" /><title>二次元俱乐部</title><linkhref="https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300|Sonsie+One"rel="stylesheet" /><linkhref="https://fonts.googleapis.com/css?family=ZCOOL+KuaiLe"rel="stylesheet" /><link href="style.css" rel="stylesheet" /></head><body><header><!-- 本站所有网页的统一主标题 --><h1>聆听电子天籁之音</h1></header><nav><!-- 本站统一的导航栏 --><ul><li><a href="#">主页</a></li><!-- 共 n 个导航栏项目,省略…… --></ul><form><!-- 搜索栏是站点内导航的一个非线性的方式。 --><input type="search" name="q" placeholder="要搜索的内容" /><input type="submit" value="搜索" /></form></nav><main><!-- 网页主体内容 --><article><!-- 此处包含一个 article(一篇文章),内容略…… --></article><aside><!-- 侧边栏在主内容右侧 --><h2>相关链接</h2><ul><li><a href="#">这是一个超链接</a></li><!-- 侧边栏有 n 个超链接,略略略…… --></ul></aside></main><footer><!-- 本站所有网页的统一页脚 --><p>© 2050 某某保留所有权利</p></footer></body>
</html>

 

 HTML 调试

HTML 并不像 Rust 那么难以理解,浏览器并不会将 HTML 编译成其他形式,而是直接解析并显示结果(称之为解释,而非编译)。可以说 HTML 的 元素 语法比 Rust、JavaScript 或 Python 这样“真正的编程语言”更容易理解。浏览器解析 HTML 的过程比编程语言的编译运行的过程要宽松得多,但这是一把双刃剑。

错误信息分析

错误信息一般都是有用的,也有没用的,有一些经验后你就能够分析并修复这些错误。下面来观察这些错误信息。可以看到每条信息都对应一个行号和一条信息,使得定位错误更方便。

  • End tag li implied, but there were open elements(需要 li 的结束标签,但又开始了新的元素)(共出现 2 次):这条信息表明有开始标签必须有结束标签,必须出现结束标签的地方却没有找到它。行/列信息指出结束标签必须出现的位置的第一行,这一线索已经足够明显了。
  • Unclosed element strong(未闭合元素 strong ):非常容易理解,<strong> 元素没有闭合,行/列信息表明了它的位置。
  • End tag strong violates nesting rules(结束标签 strong 违反了嵌套规则):指出了错误嵌套的元素,行/列信息表明了它的位置。
  • End of file reached when inside an attribute value. Ignoring tag(在属性值内达到文件末尾。忽略标签): 这个比较难懂,它说的是在某个地方有一个属性的值格式有误,估计是在文件末尾附近,因为文件的结尾出现在了一个属性值里。事实上浏览器没有渲染超链接已经是一个很明显的线索了。
  • End of file seen and there were open elements(文件结尾有未闭合的元素):这个略有歧义,但基本上表明了有元素没有正确闭合。行号指向文件最后几行,且错误信息给出了一个这种错误的案例:
  • 来看一个示例:<a href="https://www.mozilla.org/>Mozilla 主页链接</a> ↩ </ul>↩ </body>↩</html>

    备注: 属性缺少结束引号会导致元素无法闭合。因为文档所有剩余部分(直到文档某处出现一个引号)都将被解析为属性的内容。

  • Unclosed element ul(未闭合元素 ul):这个意义不大,因为 <ul> 已经正确闭合了。出现这个错误是因为 <a> 元素没有右引号而没有闭合。

如果你不能一次弄懂所有的错误,别着急,可以试试先修复那些已经弄懂的,再申请验证,看看剩下哪些错误。有时候先修复的错误可能让你摆脱后面一系列的错误,因为一个小问题可能引发一连串错误,就像多米诺骨牌。

HTML文档结构

一个典型的HTML文档结构如下:

<!DOCTYPE html>
<html lang="zh">
<head><meta charset="UTF-8"><title>文档标题</title>
</head>
<body><!-- 页面内容 -->
</body>
</html>

HTML5的新特性

HTML5不仅仅是HTML的一个新版本,它引入了一系列新特性和改进,以适应现代Web应用的需求:

  • 多媒体<video><audio>标签允许直接嵌入视频和音频内容。
  • 图形<canvas>标签提供了一个绘图API。
  • 表单控件:新增了日期选择器、电子邮件输入等控件。
  • 语义化标签:如<article><section><nav>等,提供了更好的内容结构。
  • 本地存储:通过localStoragesessionStorage提供了更多的客户端存储选项。

结论

HTML是构建网页的基础,它的不断发展和改进使得Web开发更加强大和灵活。了解HTML的历史和基本概念对于任何希望掌握Web开发的人来说都是必要的。随着HTML5的推出,Web开发者现在拥有了更多工具来创建丰富、互动和易于访问的网页。

期末放假自学三件套,希望我们可以一起学习!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/50145.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【轨物方案】成套开关柜在线监测物联网解决方案

随着物联网技术的发展&#xff0c;电力设备状态监测技术也得到了迅速发展。传统的电力成套开关柜设备状态监测方法主要采用人工巡检和定期维护的方式&#xff0c;这种方法不仅效率低下&#xff0c;而且难以保证设备的实时性和安全性。因此&#xff0c;基于物联网技术的成套开关…

photoshop学习笔记——选区

选区工具快捷键&#xff1a;M shift M 切换 矩形/椭圆选区工具 基本用法 选区框选出的地方被激活&#xff08;其后进行的操作&#xff0c;仅在选区中生效&#xff09; 选区工具选择后&#xff08;以矩形选区为例&#xff09; 按下鼠标左键拖动&#xff0c;画出一块矩形区…

最新篇 接口测试工具Postman 企业常规面试题出炉~(附答案)

面试题目录 说下你对Postman的了解&#xff1f; Postman你在工作中使用流程是什么样的&#xff1f; Postman 你使用了哪些功能&#xff1f; Postman 里面如何管理测试环境&#xff1f; Postman如何设置关联&#xff1f; postman参数化有哪几种方式&#xff1f; 在postman中&…

Android平台RTSP|RTMP直播播放器技术接入说明

技术背景 大牛直播SDK自2015年发布RTSP、RTMP直播播放模块&#xff0c;迭代从未停止&#xff0c;SmartPlayer功能强大、性能强劲、高稳定、超低延迟、超低资源占用。无需赘述&#xff0c;全自研内核&#xff0c;行业内一致认可的跨平台RTSP、RTMP直播播放器。本文以Android平台…

浏览器【WebKit内核】渲染原理【QUESTION-1】

浏览器【WebKit内核】渲染原理【QUESTION】 1.浏览器输入一个网址&#xff08;域名之后&#xff09;,浏览器会呈现一个新的页面&#xff0c;中间的过程是怎么实现的&#xff1f; 输入一个网址之后&#xff0c;首先DNS服务器会解析这个域名&#xff0c;将这个域名解析成IP地址&…

.NET 相关概念

.NET 和 .NET SDK .NET 介绍 .NET 是一个由 Microsoft 开发和维护的广泛用于构建各种类型应用程序的开发框架。它是一个跨平台、跨语言的开发平台&#xff0c;提供了丰富的类库、API和开发工具&#xff0c;支持开发者使用多种编程语言&#xff08;如C#、VB.NET、F#等&#xf…

09 算术运算符

① 运算符除了用于算数加法以外&#xff0c;还可以用于列表、元组、字符串的连接&#xff0c;但不支持不同类型的对象之间的相加或连接。 print([1, 2, 3] [4, 5, 6]) # 连接两个列表 print((1, 2, 3) (4,)) # 连接两个元组 print(hello 123) # 连接字符串 print(Fa…

开发桌面程序-Electron入门

Electron是什么 来自官网的介绍 Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发 经验。 总…

与Bug较量:Codigger之软件项目体检Software Project HealthCheck来帮忙

在软件工程师的世界里&#xff0c;与 Java 小程序中的 Bug 作战是一场永不停歇的战役。每一个隐藏在代码深处的 Bug 都像是一个狡猾的敌人&#xff0c;时刻准备着给我们的项目带来麻烦。 最近&#xff0c;我就陷入了这样一场与 Java 小程序 Bug 的激烈较量中。这个小程序原本应…

wget下载github文件得到html文件

从github/gitee下载源文件&#xff0c;本来是22M下载下来只有11k 原因&#xff1a; Github会提供html页面&#xff0c;包括指定的文件、上下文与相关操作。通过wget或者curl下载时&#xff0c;会下载该页面 解决方式&#xff1a; github点击Code一栏的raw按钮&#xff0c;获得源…

【论文复现】Vision Transformer(ViT)

1. Transformer结构 1.1 编码器和解码器 翻译这个过程需要中间体。也就是说&#xff0c;编码&#xff0c;解码之间需要一个中介&#xff0c;英文先编码成一个意思&#xff0c;再解码成中文。 那么查字典这个过程就是编码和解码的体现。首先我们的大脑会把它编码&#xff0c;编…

遍历dom元素下面的子元素的方法,vue中原始标签的ref得到是该元素的dom及下面包含的子dom,与组件ref是引用不同

研究到这个的目的来源是 想用div 遍历方式 替代之前的table tr td 那种框选功能&#xff0c;觉得div灵活&#xff0c;可以随便在外面套层&#xff0c;td与tr之间就不能加div加了布局就乱&#xff0c;然后使用之前的原理&#xff08; const cellList tableIdR.value.querySelec…

【反转链表 II】python刷题记录

印象中&#xff0c;这是遍历r2了&#xff0c;还好没放弃。 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def reverseBetween(self, head: Optional…

了解Selenium中的WebElement

Selenium中到处都使用WebElement来执行各种操作。什么是WebElement&#xff1f;这篇文章将详细讨论WebElement。 Selenium中的WebElement是一个表示网站HTML元素的Java接口。HTML元素包含一个开始标记和一个结束标记&#xff0c;内容位于这两个标记之间。 HTML元素的重命名 …

SCADA系统易用性的重要性

对于中小企业而言&#xff0c;SCADA系统的易用性至关重要&#xff0c;因为它直接影响到系统的实施效率、员工的接受程度和培训成本。一个易用的SCADA系统可以减少员工对新技术的学习曲线&#xff0c;加快系统的部署速度&#xff0c;并降低长期的维护成本。此外&#xff0c;易用…

Parameter index out of range (2 > number of parameters, which is 1【已解决】

文章目录 1、SysLogMapper.xml添加注释导致的2、解决方法3、总结 1、SysLogMapper.xml添加注释导致的 <!--定义一个查询方法&#xff0c;用于获取日志列表--><!--方法ID为getLogList&#xff0c;返回类型com.main.server.api.model.SysLogModel,参数类型为com.main.se…

Unity UGUI 之 坐标转换

本文仅作学习笔记与交流&#xff0c;不作任何商业用途 本文包括但不限于unity官方手册&#xff0c;唐老狮&#xff0c;麦扣教程知识&#xff0c;引用会标记&#xff0c;如有不足还请斧正 本文在发布时间选用unity 2022.3.8稳定版本&#xff0c;请注意分别 前置知识&#xff1a;…

牛客JS题(三)文件扩展名

注释很详细&#xff0c;直接上代码 涉及知识点&#xff1a; 正则表达式可选链操作符 题干&#xff1a; 我的答案 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /></head><body><script>/*** 可能…

快速上手,spring boot3整合task实现定时任务

在已经上线的项目中&#xff0c;定时任务是必不可少的。基于spring boot自动装配的原理&#xff0c;我们要集成task定时任务还是非常简单的。只需要简单的两步就可以实现。 1、创建一个spring boot项目&#xff0c;并在项目的启动类&#xff08;也不一定非要是启动类&#xff…

LabVIEW 实现用户授权与管理多项测试项目

在使用 LabVIEW 开发测试软件时&#xff0c;用户授权和项目管理是一个重要的功能。为了确保系统安全性、灵活性和可扩展性&#xff0c;可以设计一个用户管理系统&#xff0c;允许管理员增加或减少用户的测试项目权限。以下是一个详细的实现方案&#xff0c;包括用户授权管理、项…