在HTML中,src
和 href
是两个不同的属性,用于引用外部资源,它们有不同的用途和适用于不同类型的HTML元素。
src
属性(Source Attribute):示例:
<img src="image.jpg" alt="一张图片">
<script src="script.js"></script>
src
属性通常用于指定外部资源(如图像、音频、视频、脚本等)的路径,以便将其嵌入到HTML文档中或者用于在浏览器中加载和执行。这个属性告诉浏览器从指定的URL下载资源并嵌入到文档中。src
属性适用于元素如 <img>
, <audio>
, <video>
, <script>
等。href
属性(Hypertext Reference Attribute):示例:
<a href="https://www.example.com">前往示例网站</a>
<link rel="stylesheet" href="styles.css">
href
属性通常用于指定超链接的目标地址,用于导航到其他页面或资源。这个属性告诉浏览器在用户点击链接时应该打开的目标资源。href
属性适用于元素如 <a>
, <link>
, <area>
, <base>
等,用于定义超链接、外部样式表、区域链接和基本URL。总结:
src
主要用于加载嵌入式资源,如图片和脚本等,浏览器会根据src
属性加载资源并将其嵌入到文档中。href
主要用于定义超链接和外部资源的引用,浏览器会根据href
属性来导航到指定的资源或页面。HTML语义化是指在编写HTML代码时,使用合适的HTML元素来明确表示文档结构和内容的含义,以便浏览器和开发者能够更好地理解和处理文档。语义化的HTML代码具有以下重要特点和好处:
示例:
<!-- 非语义化的示例 -->
<div id="header">
<div id="logo">Logo</div>
<div id="navigation">导航</div>
</div>
<div id="content">
<div class="post">文章内容</div>
<div class="post">另一篇文章内容</div>
</div>
<!-- 语义化的示例 -->
<header>
<h1>网站标题</h1>
<nav>导航</nav>
</header>
<main>
<article>文章内容</article>
<article>另一篇文章内容</article>
</main>
DOCTYPE(Document Type Declaration,文档类型声明)是一种位于HTML文档开头的特殊声明,用于指定文档所使用的HTML版本和规范。DOCTYPE告诉浏览器解析HTML文档时应该使用哪个DTD(文档类型定义)或者规范来解释文档的结构和语法。DOCTYPE的作用主要包括以下几个方面:
示例:HTML5的DOCTYPE声明
<!DOCTYPE html>
<html>
<head>
<title>示例文档</title>
</head>
<body>
<!-- 文档内容 -->
</body>
</html>
<script>
标签中的 defer
和 async
属性是用来控制脚本的加载和执行方式的两种不同方法,它们之间有以下区别:
defer
:脚本会被异步下载,但会在文档解析完毕(DOMContentLoaded
事件触发之前)按照它们在文档中出现的顺序执行。多个带有 defer
属性的脚本会按照它们在文档中的顺序依次执行。async
:脚本也会被异步下载,但它们在下载完成后立即执行,不会等待文档的解析。多个带有 async
属性的脚本在下载完成后可以并行执行,执行顺序不受控制。defer
:脚本的下载和执行不会阻塞文档的解析。文档会继续解析和渲染,同时脚本在后台下载,然后在文档解析完毕后执行。async
:脚本的下载和执行会异步进行,不会阻塞文档的解析。文档会继续解析和渲染,同时脚本下载完成后立即执行。defer
通常用于那些依赖于文档结构的脚本,例如操作DOM元素的脚本。它们会在文档解析完毕后按照顺序执行,确保能够访问到文档中的DOM元素。async
通常用于那些不依赖于文档结构、可以独立运行的脚本,例如一些统计分析脚本,它们不需要等待文档解析,可以尽早下载和执行。示例:
<!DOCTYPE html>
<html>
<head>
<title>Script Loading Example</title>
<script src="script1.js" defer></script>
<script src="script2.js" defer></script>
<script src="script3.js" async></script>
</head>
<body>
<!-- 页面内容 -->
</body>
</html>
这个例子中,script1.js
和 script2.js
带有 defer
属性,它们会按照顺序在文档解析完成后执行。而 script3.js
带有 async
属性,它会在下载完成后立即执行,不阻塞文档的解析。
<meta>
标签用于在HTML文档中提供元数据信息,这些信息通常不直接显示在页面上,而是用于描述文档的一些属性、设置字符编码、指定视口尺寸等。以下是一些常用的 <meta>
标签及其作用:
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="keywords" content="关键词1, 关键词2, ...">
<meta name="description" content="网页描述">
<meta name="author" content="作者名">
<meta name="copyright" content="版权信息">
<meta http-equiv="refresh" content="5;url=http://example.com">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate">
HTML5 是 HTML(超文本标记语言)的第五个主要版本,引入了许多新的特性和更新,旨在改善网页结构、功能和多媒体支持。以下是 HTML5 的一些重要更新和新特性:
<header>
、<nav>
、<main>
、<article>
、`` 等,用于更清晰地表示文档的结构,提高可读性和可访问性。<audio>
和 <video>
元素,允许在网页上嵌入音频和视频内容,而不需要依赖第三方插件(如Flash)。<canvas>
元素,使开发者可以通过JavaScript绘制图形、动画和图表。此外,HTML5还增强了对矢量图形的支持,通过 <svg>
元素可以创建可伸缩矢量图形。localStorage
和 sessionStorage
,允许网页在客户端存储数据,以提高性能和离线访问能力。<input type="email">
、<input type="date">
、<input type="number">
等,以简化表单输入和验证。<audio>
和 <video>
,HTML5 还引入了 <picture>
和 <source>
元素,以更好地处理响应式图像和多媒体内容。localStorage
和 sessionStorage
,允许网页在客户端存储数据。这些都是HTML中常见的标签,它们之间有一些重要的区别:
<title>
与 `` 的区别:示例:
<title>网页标题</title>
<h1>这是主标题</h1>
<p>这是段落文本。</p>
<title>
标签用于指定网页的标题,这个标题通常显示在浏览器的标题栏或书签中,不直接显示在页面内容中。<b>
与 `` 的区别:示例:
<p>这是一段 <b>粗体</b> 文本。</p>
<p>这是一段 <strong>重要</strong> 的文本。</p>
<b>
标签用于表示文本的粗体文本样式,但没有强调或语义上的重要性。它主要用于样式目的。<i>
与 <em>
的区别:示例:
<p>这是一段 <i>斜体</i> 文本。</p>
<p>这是一段 <em>重要</em> 的文本。</p>
<i>
标签用于表示文本的斜体样式,但没有强调或语义上的重要性。它主要用于样式目的。<em>
标签用于强调文本的重要性或语义上的强调,通常会呈现为斜体文本,但它更强调内容的重要性,而不仅仅是样式。Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8