<semantics>

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2023.

* Some parts of this feature may have varying levels of support.

<semantics> MathML element liên kết các chú giải với một biểu thức MathML, ví dụ như nguồn văn bản của nó dưới dạng một ngôn ngữ đánh dấu nhẹ hoặc ý nghĩa toán học được biểu đạt trong một phương ngữ XML đặc biệt. Thông thường, cấu trúc của nó là:

  • một phần tử con đầu tiên là một biểu thức MathML cần được chú giải.
  • các phần tử <annotation> hoặc <annotation-xml> phía sau, trong đó phần tử sau được dành riêng cho các định dạng XML như Content MathML hoặc SVG.

Theo mặc định, chỉ phần tử con đầu tiên của phần tử <semantics> được hiển thị, còn các phần tử khác sẽ có thuộc tính display đặt thành none.

css
semantics > :not(:first-child) {
  display: none;
}

Note: Các đặc tả MathML cũ cho phép bộ hiển thị quyết định cách hiển thị mặc định dựa trên các chú giải sẵn có. Các quy tắc sau đây để xác định phần tử con hiển thị đã được triển khai trong một số trình duyệt. Xem MathML 4 để phân biệt giữa Presentation MathML và Content MathML.

  • Nếu không có quy tắc nào khác áp dụng: Theo mặc định chỉ phần tử con đầu tiên được hiển thị, và phần tử này được giả định là Presentation MathML.
  • Nếu phần tử con đầu tiên là một phần tử Presentation MathML khác với <annotation> hoặc <annotation-xml>, hãy hiển thị phần tử con đầu tiên.
  • Nếu không tìm thấy Presentation MathML, hãy hiển thị phần tử con <annotation> hoặc <annotation-xml> đầu tiên của <semantics> không có thuộc tính src. Với phần tử <annotation-xml>, thuộc tính encoding phải bằng một trong các giá trị sau:
    • "application/mathml-presentation+xml"
    • "MathML-Presentation"
    • "SVG1.1"
    • "text/html"
    • "image/svg+xml"
    • "application/xml"

Lưu ý rằng "application/mathml+xml" không được nhắc đến ở đây vì nó không phân biệt giữa Content MathML và Presentation MathML.

Thuộc tính

Các thuộc tính của phần tử này bao gồm các thuộc tính MathML toàn cục.

Ví dụ

html
<math display="block">
  <semantics>
    <!-- Phần tử con đầu tiên là biểu thức MathML được hiển thị theo mặc định. -->
    <mrow>
      <msup>
        <mi>x</mi>
        <mn>2</mn>
      </msup>
      <mo>+</mo>
      <mi>y</mi>
    </mrow>

    <!--
      Chú giải bằng Content MathML, một phương ngữ XML chuyên dụng
      để biểu đạt ý nghĩa của các công thức toán học.
    -->
    <annotation-xml encoding="application/mathml-content+xml">
      <apply>
        <plus />
        <apply>
          <power />
          <ci>x</ci>
          <cn type="integer">2</cn>
        </apply>
        <ci>y</ci>
      </apply>
    </annotation-xml>

    <!--
      Chú giải bằng LaTeX, một ngôn ngữ đánh dấu nhẹ
      để viết các công thức toán học.
    -->
    <annotation encoding="application/x-tex">x^{2} + y</annotation>
  </semantics>
</math>

Tóm tắt kỹ thuật

Vai trò ARIA ngầm định Không

Đặc tả

Specification
MathML Core
# semantics-and-presentation

Tương thích trình duyệt