HTML文档结构

作者: Cissy_fba3 | 来源:发表于2023-01-27 17:11 被阅读0次
    <!DOCTYPE html> <!--声明文档类型,不是HTML元素-->
    <html lang="en-US"><!--根节点-->
      <head><!--声明文档的元数据,不会显示在视口中-->
      </head>
      <body><!--包含显示在视口中的所有内容-->
      </body>
    </html>
    

    <!DOCTYPE html>

    不是html元素,是一个叫文档类型特殊的节点, doctype告诉浏览器用哪种标准模式的文档。

    <html>

    HTML document的根标签,是 <head> and <body>的父标签,包含除doctype之外的所有内容。

    <head>

    声明文档的元数据, 包含了 文档标题,角色设置, 窗口设置, 文档描述, base URL, 样式链接, icons等.

    <head>
        <!--字符集的编码声明,确保在title之前声明-->
        <meta charset="UTF-8">
        <!--字符集的编码声明,确保在title之前声明-->
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <!--定义视口的一些特性,比如是否可伸缩等-->
        <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=1">
        <!--文档标题,会在浏览器打开标签中显示-->
        <title>Home</title>
    </head>
    
    <meta>

    meta常用于定义页面的说明,关键字,最后修改日期,和其它的元数据。这些元数据将服务于浏览器(如何布局或重载页面),搜索引擎和其它网络服务。

    具体使用参照https://segmentfault.com/a/1190000004279791

    <link>

    link标签一般用来引入外部资源,一些是下载的资源,一些则用来展示信息。具体用来干啥,则用ref来决定。

    ref可以有25个类型的值

    应用示例

    • 最常见的引入css文件

    <link rel="stylesheet" href="./index.css">

    • 网站图标favicon
    <link rel="icon" sizes="16x16 32x32 48x48" type="image/png" href="/images/mlwicon.png" />
    <link rel="apple-touch-icon" sizes="180x180" href="/images/mlwicon.png" />
    <link rel="mask-icon" href="/images/mlwicon.svg" color="#226DAA" />
    
    • 网站的替用版本
    <link rel="alternate" href="https://www.machinelearningworkshop.com/fr/" hreflang="fr-FR" />
    <link rel="alternate" href="https://www.machinelearningworkshop.com/pt/" hreflang="pt-BR" />
    
    • 规范

    如果定义了多个版本的网站,rel为"canonical"的则为首选站点。

    <link rel="canonical" href="https://www.machinelearning.com" />

    <style>

    style标签用来写css样式

    <style>
      :root {
        --theme-color: #226DAA;
      }
    </style>
    

    有三种方法可以在HTML document中运用css:link标签引入外部资源、head中在style标签中、HTML普通标签中行内样式。

    <script>

    用于写js。

    <script>
      document.getElementById('switch').addEventListener('click', function() {
        document.body.classList.toggle('black');
      });
    </script>
    

    一般放于body末尾,因为JavaScript不仅会导致渲染阻塞,而且当脚本被下载时,浏览器会停止下载所有资源,并且直到JavaScript执行完才会继续下载其他资源。有两个属性可以解决这个问题,defer和async。

    defer, HTML在js下载时不会被阻塞,而且只有当html渲染完毕之后js才会执行。async, 在js下载时也不会阻塞HTML渲染, 但是一旦js下载完毕,html渲染就会暂停来等js执行。所以如果非要在head中执行js脚本,记得加上defer。

    <script src="js/switch.js" defer></script>

    <base>

    <base> 标签为页面上的所有的相对链接规定默认 URL 或默认目标。href属性定义了所有相对链接的基URL。只能设置在head中,且一个document只能拥有一个。

    <base target="_top" href="https://machinelearningworkshop.com" />
    <!--设置了base之后,a标签等可以以下那样写-->
    <a href="#ref">
    <!--相当于没有设置base下的-->
    <a target="_top" href="https://machinelearningworkshop.com#ref"> 
    

    <body>

    document的内容部分,视口中展示在页面上的内容。

    相关文章

      网友评论

        本文标题:HTML文档结构

        本文链接:https://www.haomeiwen.com/subject/dqcehdtx.html