H1,H2,H3,H4标签是阻止还是内联元素?

Chr*_*s S 34 html

更改H1,H2,H3或H4元素内的文本颜色是否正确?它们是块级吗?

例如

<h1><span style="color:#ABAB">#500</span> Hello world</h1>
Run Code Online (Sandbox Code Playgroud)

Ode*_*ded 67

它们是块元素.

如果你看一下HTML 4.01严格的DTD:

<!ENTITY % heading "H1|H2|H3|H4|H5|H6">

<!ENTITY % block
     "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
      BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">
Run Code Online (Sandbox Code Playgroud)

因此,它们都被定义为%heading实体,而实体又是%block实体的一部分.

至于关于你是否可以改变颜色的问题 - 这只是样式并且很好,虽然我会在CSS文件中这样做,而不是内联:

H1, H2, H3, H4, H5, H6
{
 color: #ccccc;
}
Run Code Online (Sandbox Code Playgroud)

  • 我喜欢你添加html DTD来解释答案的方式.GR8 (3认同)

小智 6

确定元素是块级元素还是内联元素的最简单方法是在其周围添加边框。

超文本标记语言

<h1>Heading 1</h1>
<span>Span</span>
Run Code Online (Sandbox Code Playgroud)

CSS

h1 {
   border: 2px solid green;
}

span {
   border: 2px solid blue;
}
Run Code Online (Sandbox Code Playgroud)

有关JSFiddle的更多示例。


Soa*_*abh 5

是的,如果您要使用内联CSS,这是正确的方法。否则让班级说

<h1 class="title"><span>#500</span> Hello world</h1>
Run Code Online (Sandbox Code Playgroud)

现在它的CSS是:

h1.title span{
color:#ABABAB;
}
Run Code Online (Sandbox Code Playgroud)

同样,h1到h6是一个块级别。