【温故而知新】HTML5新标签canvas、MathML

发布时间:2024年01月16日

一、概念

HTML5是HTML的最新版本,它引入了许多新的元素和功能,以适应现代网页开发的需求。以下是HTML5的一些主要特点:

  1. 新增语义元素:HTML5引入了许多新的语义元素,如<header>、<footer>、<article>、<section>等,这些元素有助于提高网页的结构化和可访问性。
  2. 媒体支持:HTML5引入了<audio>和`元素,使得开发者可以在网页上直接嵌入音频和视频内容,而不需要依赖第三方插件。
  3. Canvas绘图:HTML5引入了<canvas>元素,使得开发者可以使用JavaScript在网页上绘制图形和动画。
  4. 语义化标签:HTML5的语义化标签使得网页的结构更加清晰和易于理解。例如,使用<nav>元素表示导航链接,使用<article>元素表示独立的内容等。
  5. 交互性:HTML5提供了更多的API和事件处理程序,使得开发者可以创建更加交互式的网页和应用。例如,拖放功能、文件上传和下载、地理定位等。
  6. 离线和存储:HTML5提供了离线存储和会话存储功能,使得开发者可以在用户的设备上存储数据,以便在离线时使用。
  7. 更好的表单控制:HTML5改进了表单元素和输入类型,使得表单的验证和输入更加方便和智能。

HTML5是一个非常强大的工具,它为开发者提供了更多的功能和灵活性,使得他们可以创建出更加丰富、交互性更强、功能更全面的网页和应用。

二、新标签

标签描述
<article>定义页面独立的内容区域。
<aside>定义页面的侧边栏内容。
<bdi>允许您设置一段文本,使其脱离其父元素的文本方向设置。
<command>定义命令按钮,比如单选按钮、复选框或按钮
<details>用于描述文档或文档某个部分的细节
<dialog>定义对话框,比如提示框
<summary>标签包含 details 元素的标题
<figure>规定独立的流内容(图像、图表、照片、代码等等)。
<figcaption>定义
元素的标题
<footer>定义 section 或 document 的页脚。
<header>定义了文档的头部区域
<mark>定义带有记号的文本。
<meter>定义度量衡。仅用于已知最大和最小值的度量。
<nav>定义导航链接的部分。
<progress>定义任何类型的任务的进度。
<ruby> 定义 ruby 注释(中文注音或字符)。
<rt>定义字符(中文注音或字符)的解释或发音。
<rp> 在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。
<section>定义文档中的节(section、区段)。
<time>定义日期或时间。
<wbr>规定在文本中的何处适合添加换行符。
<audio>定义音频内容
<video>定义视频(video 或者 movie)
<source>定义多媒体资源 <video> 和 <audio>
<embed>定义嵌入的内容,比如插件。
<track>为诸如<video> 和 <audio>元素之类的媒介规定外部文本轨道。
<datalist>定义选项列表。请与 input 元素配合使用该元素,来定义 input 可能的值。
<keygen> 规定用于表单的密钥对生成器字段。
<output>定义不同类型的输出,比如脚本的输出。
<canvas>标签定义图形,比如图表和其他图像。该标签基于 JavaScript 的绘图 API

三、canvas

Canvas是HTML5的一个功能,它是一个可以用于绘制图形、动画和游戏等的元素。以下是一个简单的Canvas案例代码,可以在页面上绘制一个矩形:

<!DOCTYPE html>
<html>
  <head>
    <title>Canvas Example</title>
    <style>
      #canvas {
        border: 1px solid black;
      }
    </style>
  </head>
  <body>
    <canvas id="canvas" width="400" height="300"></canvas>

    <script>
      var canvas = document.getElementById("canvas");
      var ctx = canvas.getContext("2d");

      // 设置绘制矩形的颜色和大小
      ctx.fillStyle = "red";
      ctx.fillRect(50, 50, 200, 100);

      // 在矩形上绘制文字
      ctx.font = "20px Arial";
      ctx.fillStyle = "white";
      ctx.fillText("Hello, Canvas!", 70, 100);
    </script>
  </body>
</html>

在这个例子中,我们首先创建了一个Canvas元素,并设置了它的宽度和高度。然后通过JavaScript获取到这个Canvas元素的上下文(context),并设置了绘制矩形的颜色和大小,使用fillRect()方法绘制了一个红色的矩形。最后,使用fillText()方法在矩形上绘制了一段文字。

四、SVG

SVG(Scalable Vector Graphics,可伸缩矢量图形)是一种基于XML语法的矢量图形格式,它可以用于在网页上绘制丰富的矢量图形和动画。以下是一个简单的SVG案例代码,可以在页面上绘制一个圆形:

<!DOCTYPE html>
<html>
  <head>
    <title>SVG Example</title>
  </head>
  <body>
    <svg width="400" height="300">
      <circle cx="200" cy="150" r="100" fill="red" />
      <text x="180" y="160" fill="white">Hello, SVG!</text>
    </svg>
  </body>
</html>

在这个例子中,我们使用了<svg>标签创建了一个SVG元素,并设置了它的宽度和高度。在SVG元素中,我们使用<circle>标签创建了一个圆形,cxcy属性用于设置圆心的坐标,r属性用于设置半径,fill属性用于设置填充颜色。然后,使用<text>标签创建了一段文字,xy属性用于设置文字的起始位置,fill属性用于设置文字的颜色。

SVG的语法相对简单,可以通过直接在HTML文件中嵌入SVG代码来绘制图形。除了基本的图形元素,SVG还支持路径、图像、渐变等更多高级特性,可以实现更复杂的图形和动画效果。

五、MathML

MathML(Mathematical Markup Language,数学标记语言)是一种基于XML语法的数学标记语言,用于在网页中表示和展示数学公式和符号。以下是一个简单的MathML案例代码,可以在页面上显示一个简单的数学公式:

<!DOCTYPE html>
<html>
  <head>
    <title>MathML Example</title>
  </head>
  <body>
    <math xmlns="http://www.w3.org/1998/Math/MathML">
      <mrow>
        <mi>x</mi>
        <mo>+</mo>
        <mi>y</mi>
      </mrow>
      <mo>=</mo>
      <mn>5</mn>
    </math>
  </body>
</html>

在这个例子中,我们使用了<math>标签来创建一个MathML元素,并在其中使用了一系列MathML标签来表示数学公式。<mrow>标签用于创建一个行,并在其中使用<mi>标签表示变量或标识符,<mo>标签表示运算符,<mn>标签表示数字。通过组合这些标签,我们可以构建出复杂的数学公式。

MathML也支持更多的数学元素和属性,用于表示更复杂的数学表达式和结构。在支持MathML的浏览器中,MathML代码会被解析和渲染成可视化的数学公式。

文章来源:https://blog.csdn.net/xuaner8786/article/details/135619087
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。