我怎样才能进入另一个标题HTML?
我已经使用<h1>,<h2>,<h3>,<h4>,<h5>和<h6>,现在我想补充<h7>,并<h8>为我有我需要使用不同的文本类型.
如果你不能这样做,有没有办法打电话给CSS表格的文本,其他<p>和<h1>- <h6>?
到目前为止发布的答案都不是完全正确的。有些是相当具有误导性的。
\n在HTML5中,您确实可以使用h7、h8等等,并使用相应的 CSS 选择器来选择它们,但从语义上讲,这些不是标题。它们只是具有未知语义的元素\xe2\x80\x94,非常类似于div和span。display另外,如果所有浏览器都一致地处理这些“自定义”元素而不至少提供 CSS 值,我会感到惊讶。
但是您可以role使用属性指定缺失的语义"heading",这对于屏幕阅读器等辅助技术非常重要。它可能(可以想象)对SEO产生一定的影响,但还有许多比这更大的 SEO 问题。
指定高于 6 的标题级别的正确方法是包含该属性aria-level="7"(或您喜欢的任何级别)。如果将此属性应用于除h1-以外的任何内容h6,您还需要role="heading".
因此,根据w3,以下任何“h7”示例都是有效且正确的:
\n<h1 aria-level="7">...(标题语义由“h1”提供,但 7 覆盖 1)
<h7 role="heading" aria-level="7">...(标题语义由 提供role)
<div role="heading" aria-level="7">...(标题语义由 提供role)
当然,要在 CSS 中选择其中任何一个,您可以执行以下操作:
\n*[aria-level="7"] {\n font-size:0.5em;\n}\nRun Code Online (Sandbox Code Playgroud)\n最后:不要将不同级别的标题嵌套在一起!众所周知,这会让所有屏幕阅读器感到困惑,并且可能也不是有效的 HTML。在开始新的标题元素之前完全关闭每个标题元素。如果您使用 ,很容易忽视这一点div,并且验证器很可能不会注意到该错误。
您可以在样式表中声明这一点
h7, h8, h9 { /* You can just go on adding headings */
display: block; /* Because this is block level element */
}
h7 {
font-size: /*Whatever */ ;
}
h8 {
font-size: /*Whatever */ ;
}
Run Code Online (Sandbox Code Playgroud)
但我建议你不要这样做,因为它没有任何语义含义,从SEO的角度来看也是不好的
另外看看html5shiv,只需在脚本中添加所需的元素即可