<mstyle>

Baseline 已广泛支持

此功能已成熟,并且在众多设备和浏览器版本上都能正常工作。自 2023 年 1 月以来,它已在各浏览器中可用。

<mstyle> MathML 元素用于更改其子元素的样式。

注意: 历史上,此元素几乎接受所有 MathML 属性,并用于覆盖其后代元素的默认属性值。后来,它被限制为仅允许少数在现有网页中使用的相关样式属性。如今,这些样式属性 与所有 MathML 元素通用,因此 <mstyle> 实际上等同于一个 <mrow> 元素。但是,<mstyle> 对于与浏览器以外的 MathML 实现的兼容性仍然可能很重要。

属性

此元素的属性包括 全局 MathML 属性以及以下已弃用的属性

background 已弃用 非标准

请改用 CSS 属性 background-color

color 已弃用 非标准

请改用 CSS 属性 color

fontsize 已弃用 非标准

请改用 CSS 属性 font-size

fontstyle 已弃用 非标准

请改用 CSS 属性 font-style

fontweight 已弃用 非标准

请改用 CSS 属性 font-weight

示例

映射到 CSS 的属性

以下示例使用 全局属性 displaystylemathcolor 分别覆盖 <munder><munderover> 子元素的 math-stylecolor

html
<math display="block">
  <mstyle displaystyle="false" mathcolor="teal">
    <munder>
      <mo>∑</mo>
      <mi>I</mi>
    </munder>
    <munderover>
      <mo>∏</mo>
      <mrow>
        <mi>i</mi>
        <mo>=</mo>
        <mn>1</mn>
      </mrow>
      <mi>N</mi>
    </munderover>
  </mstyle>
</math>

旧脚本属性

以下示例显示了一个公式,其 font-size 设置为 128pt。它包含嵌套上标中的数字以及一个具有旧属性 scriptsizemultiplierscriptminsize<mstyle> 元素。当进入每个上标时,font-size 将乘以 0.5,前提是它不会小于 16pt

html
<math display="block">
  <mstyle scriptsizemultiplier="0.5" scriptminsize="16pt">
    <msup>
      <mn>2</mn>
      <msup>
        <mn>2</mn>
        <msup>
          <mn>2</mn>
          <msup>
            <mn>2</mn>
            <msup>
              <mn>2</mn>
              <msup>
                <mn>2</mn>
                <mn>2</mn>
              </msup>
            </msup>
          </msup>
        </msup>
      </msup>
    </msup>
  </mstyle>
</math>
css
math {
  font-size: 128pt;
}

技术摘要

隐式 ARIA 角色 None

规范

规范
MathML Core
# style-change-mstyle

浏览器兼容性