Main Content

本页采用了机器翻译。点击此处可查看英文原文。

将 HTML 转换为 DOM 对象的要求

要将 HTML 内容转换为 mlreportgen.dom.HTMLmlreportgen.dom.HTMLFile 对象,HTML 内容必须是 XML 可解析的。当 HTML 内容符合正确格式的 XML 规则时,它是 XML 可解析的,例如:

  • 为所有元素添加结束标签。

  • 元素的开始和结束标签(开始和结束)均使用小写字母。例如,对段落元素使用 <p></p>,而不是 <P></P>

  • 正确嵌套元素。如果在另一个元素内打开一个元素,请先关闭第一个元素,然后再关闭包含它的元素。

  • 将属性值括在引号中。例如,使用 <p align="center"></p>

有关详细信息,请参阅 www.w3schools.com/xml/xml_syntax.asp 上的 W3Schools XML 规则摘要。

支持的 HTML 元素和属性

此表显示了将 HTML 转换为 DOM 对象时支持的 HTML 元素和属性。不受支持的元素和属性将被忽略。

HTML 元素属性
aclass, style, href, name
addressclass, style
bclass, style
bigclass, style
blockquoteclass, style
bodyclass, style
br不适用
centerclass, style
citeclass, style
codeclass, style
ddclass, style
delclass, style
dfnclass, style
divclass, style
dlclass, style
dtclass, style
emclass, style
fontclass, style, color, face, size
h1, h2, h3, h4, h5, h6class, style, align
hrclass, style, align
iclass, style
insclass, style
imgclass, style, src, height, width
kbdclass, style
liclass, style
markclass, style
nobrclass, style
olclass, style
pclass, style, align
preclass, style
sclass, style
sampclass, style
smallclass, style
spanclass, style
strikeclass, style
strongclass, style
subclass, style
supclass, style
tableclass, style, align, bgcolor, border, cellspacing, cellpadding, frame, rules, width
tbodyclass, style, align, valign
tfootclass, style, align, valign
theadclass, style, align, valign
tdclass, style, bgcolor, height, width, colspan, rowspan,align, valign, nowrap
thclass, style, bgcolor, height, width, colspan, rowspan,align, valign, nowrap
trclass, style, align,bgcolor, valign
ttclass, style
uclass, style
ulclass, style
varclass, style

有关这些元素的信息,请参阅 https://developer.mozilla.org/en-US/docs/Web/HTML/Element

所有元素均支持 HTML CSS 样式属性

您可以使用 HTML 样式属性来格式化追加到 DOM 报 告的 HTML 内容。样式属性是层叠样式表 (CSS) 格式的字符串。

支持以下 CSS 格式:

  • background-color

  • border

  • border-bottom

  • border-bottom-color

  • border-bottom-style

  • boder-bottom-width

  • border-color

  • border-left

  • border-left-color

  • border-left-style

  • boder-left-width

  • border-right

  • border-right-color

  • border-rigtht-style

  • border-right-width

  • border-style

  • border-top

  • border-top-color

  • border-top-style

  • border-top-width

  • border-width

  • color

  • counter-increment

  • counter-reset

  • display

  • font-family

  • font-size

  • font-style

  • font-weight

  • height

  • line-height

  • list-style-type

  • margin

  • margin-bottom

  • margin-left

  • margin-right

  • margin-top

  • padding

  • padding-bottom

  • padding-left

  • padding-right

  • padding-top

  • text-align

  • text-decoration

  • text-indent

  • vertical-align

  • white-space

  • width

有关这些格式的信息,请参阅 https://developer.mozilla.org/en-US/docs/Web/CSS/Reference

支持 HTML 字符实体

您可以追加包含特殊字符的 HTML 内容,例如英镑符号、美元符号或保留的 XML 标记字符。XML 标记特殊字符是 ><&"'。要包含特殊字符,请使用 HTML 命名或数字字符引用。例如,若要在要追加的 HTML 内容中包含左尖括号 (<),请使用以下字符实体引用之一:

  • 命名字符实体引用 &lt;

  • 数字字符实体引用 &003c;

更多信息请参阅 https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references

DOCTYPE 声明

追加到 DOM 报 告的 HTML 内容不需要包含文档类型声明(请参阅 https://en.wikipedia.org/wiki/Document_type_declaration)。如果内容包含文档类型声明,则必须满足以下条件:

  • 如果内容包含字符实体引用(特殊字符),则文档类型声明必须引用定义所引用实体的文档类型定义 (DTD)。例如,以下声明指定了定义所有 HTML 字符实体的 DTD 文件:

    <!DOCTYPE html SYSTEM "html.dtd">

    html.dtd 包含在 MATLAB® Report Generator™ 软件中。

  • 如果文档类型声明引用了 DTD 文件,则声明指定的路径下必须存在有效的 DTD 文件。否则,追加内容会导致 DTD 解析错误。例如,以下声明会导致解析错误:

    <!DOCTYPE html SYSTEM "foo.dtd">
  • 如果要追加的内容不包含字符实体引用,则文档类型声明不需要引用 DTD 文件。例如,以下声明适用于不使用特殊字符的内容:

    <!DOCTYPE html>

提示

为了避免文档类型声明问题,请从您打算追加到 DOM 报 告的现有 HTML 内容中删除声明。如果内容不包含声明,DOM 会在前面添加一个定义整个 HTML 字符实体集的有效声明。

相关主题