<math>
元素在手动编写时可以正常工作,但在使用js动态创建时不能正确呈现:
let math = document.createElement('math');
math.setAttribute('display', 'block');
let mfrac = document.createElement('mfrac');
let ms1 = document.createElement('ms');
let ms2 = document.createElement('ms');
ms1.textContent = 'this';
ms2.textContent = 'doesn\'t';
mfrac.appendChild(ms1);
mfrac.appendChild(ms2);
math.appendChild(mfrac);
document.body.appendChild(math);
<!DOCTYPE html>
<html>
<body>
<math display="block">
<mfrac>
<ms>this</ms>
<ms>works</ms>
</mfrac>
</math>
</body>
</html>
未渲染的分数的屏幕截图:
通过插入新的子元素来更新现有的<math>
个元素根本不会更改它们的外观,尽管判断器中的文档发生了更改.