如何制作新的标题(数字)标签?

时间:2013-02-16 08:31:48

标签: html

如何在HTML中制作另一个标题?

我使用了<h1><h2><h3><h4><h5><h6>,现在我想添加{ {1}}和<h7>因为我需要使用不同的文本类型。

如果您无法执行此操作,是否可以使用<h8>表单来处理文字,而CSS<p> - <h1>除外?

6 个答案:

答案 0 :(得分:8)

您可以在样式表中声明这个

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 */ ;
}

但是我建议你不要这样做,因为它没有任何语义含义,从SEO的角度来看也是不好的

另请查看html5shiv,只需在脚本中添加所需的元素

即可

答案 1 :(得分:2)

关于我的另一个完全不相关的问题,我收到了这个问题的答案:


你不能制作标题7,因为只有六个不同的HTML标题(h1,h2,h3,h4,h5和h6;参考:http://www.w3schools.com/tags/tag_hn.asp),但你可以用这个标题6 CSS代码:

h6.special { color:#464646; outline:0;
    font-family:Raleway, sans-serif; font-size:17px; }

和这个HTML代码:

<h6 class="special">I am special!</h6>






此解决方案不会破坏seo并且相当简单。 我只是应该让每个人都知道。 作为一个附带问题,你能改变“特殊”吗? 如果我将其更改为

h6.raleway { color:#464646; outline:0;
    font-family:Raleway, sans-serif; font-size:17px; }

和这个HTML代码:

<h6 class="raleway">I am raleway!</h6>

这会有用吗? 再次感谢您的回答!

答案 2 :(得分:1)

简单的方法是使用类

.h7{ font-size:10px;}
.h8{font-size:7px;}

某种方式,并使用跨越div。

答案 3 :(得分:1)

h7,h8,h9不是有效的html标记,浏览器可以用它做它想做的事情。您可以创建自己的css类并使用css属性,如h2,h3等。

<强>像:

 h7{
        display: block;
        font-size: 0.51em;
        -webkit-margin-before: 2.99em;
        -webkit-margin-after: 2.99em;
        -webkit-margin-start: 0px;
        -webkit-margin-end: 0px;
        font-weight: bold;
    }

答案 4 :(得分:1)

到目前为止,没有答案是完全正确的。有些颇具误导性。

在html5中,您确实可以使用h7h8等,并使用相应的CSS选择器选择它们,但是从语义上讲这些不是标题,它们是只是语义不明的元素-很像div和spans。同样,如果所有浏览器都一贯对待这些“自定义”元素,而至少没有为display提供CSS值,我会感到惊讶。

但是,您可以使用role属性的"heading"指定缺少的语义,这对于诸如屏幕阅读器之类的辅助技术将非常重要。 (可能)可能会对SEO产生一定的影响,但是SEO问题远不止于此。

指定高于6的标题级别的正确方法是包括属性aria-level="7"(或您喜欢的任何级别)。如果将此属性应用于h1-h6以外的其他任何内容,则还需要role="heading"

因此,根据w3,以下任何“ h7”示例均有效且正确:

<h1 aria-level="7">...(“ h1”提供的标题语义,但7覆盖1)

<h7 role="heading" aria-level="7">...role提供的标题语义)

<div role="heading" aria-level="7">...role提供的标题语义)

当然,要在CSS中选择任何一个,您可以执行以下操作:

*[aria-level="7"] {
    font-size:0.5em;
}

最后:不要在彼此之间嵌套不同级别的标题!众所周知,这会混淆所有屏幕阅读器,并且可能也不是有效的HTML。在开始新的标题元素之前,请完全关闭每个标题元素。如果您使用的是div,则很容易忽略这一点,验证器很可能不会注意到该错误。

答案 5 :(得分:0)

如果您确实需要第6级以下的标题(这意味着您的文档对应于结构和部分嵌套中的大型图书),请使用div元素和class属性。 (使用像h7这样的“自定义标签”不符合规范,导致IE出现问题,并产生使用标题的错觉 - 它们不会成为标题,搜索引擎,大纲构造等等。)示例:

<style>
.h7 { font-weight: bold; margin-top: 1em; }
</style>

<div class=h7>Some text</div>

(很难将标题设置为7或8级,以便水平清晰地反映在外观上,并且最顶层的字体大小不会过大。)

理论上,您可以使用HTML5 section元素来定义文档中的部分,章节,部分,子部分等的嵌套结构,并且例如每个h1内的section标题。通过HTML5 CR,section元素的嵌套定义了标题的级别,因此在嵌套的第7级,<h1>将是第7级标题。但即使对于那些一般都喜欢HTML5的人来说,这可能会让人感到困惑,为了让这个在IE上的旧版本中工作,你需要<script>document.createElement('section')</script> as well as section {display:block}`以及使用上下文选择器格式化标题的代码

“我需要使用的不同文本类型”这一表述暗示您可能正在寻找样式元素的可能性。在这种情况下,请根据需要使用divp或其他具有class属性的元素,以适合内容和结构,并在CSS中进行样式设置。