HTML中标题标记所需的段落标记?

时间:2013-12-28 00:37:01

标签: html paragraph html-heading

我开始学习HTML,在课程中我告诉我要在<p>段落标记的正文中加入文字。但是,在另一个部分中,它只是告诉我在<h1>标记之间放置一些文本,结果似乎是相同的。是否需要<p>标记包含在标题标记之间?

7 个答案:

答案 0 :(得分:3)

直接回答

不,标题内不需要<p>。而且,一定不能在那里使用!

根据HTML 4 DTDHTML 5 content modelsp元素不能在h1中使用,也不能包含h1

参考规格

在HTML 4中,p element被定义为块级,并且只能包含内联元素,h1 element也是如此。

在HTML 5中,p element可用于需要flow content并且可以包含phrasing content的上下文中。同样适用于h1 element

文本

其他答案提到“自由文本” - 段落文本未标记p元素内容。 Text在HTML 5中被归类为短语内容和流内容,并没有什么特别之处。对于HTML 4,我不确定这一点,我怀疑该规范并未对此有太多了解。

流内容意味着文本可以直接嵌入body,因为其内容模型是流内容。事实上,文本几乎可以嵌入任何地方。使用p元素是样式和段落中断所必需的,因为任何空格序列通常在显示之前折叠成一个。但在某些简单的情况下,p不需要使用,例如当整个文件只是一个标题和一个段落时:

<!DOCTYPE html>
<title>Really minimalistic HTML 5 example</title>
<h1>Really minimalistic HTML 5 example</h1>
And that’s all, folks!

正在寻找htmlheadbody代码?他们是omitted;但这些元素仍然存在。但是没有p元素。您可以在Firebug中验证该内容,也可以将样式应用于bodyp。如果你想要“那就是全部,大家好!”要成为真正的p段落,只需将<p>放在“和”之前。 (结束标记</p>可以省略。)

如何考虑HTML

由于许多人对HTML提出了误导性建议,因此就HTML理解而言,我想指出正确的方向。

元素不是标记。元素是文档结构的单位。 Tag是一个字符串,表示文档源代码中的元素。大多数元素需要两个标签(打开和关闭一个)来表示它们。例如。 p元素通常由<p>开头标记,</p>结束标记和这两者之间的文字表示。开口标签也可以是例如<p style="color: red"> - 同一元素的不同标记。打开标记列出元素的属性(在这种情况下为style属性)。

HTML用于标记文档的结构。您可以完全忽略浏览器可以某种方式以粗体字显示h1,边距很大。 CSS负责元素的呈现。 JS负责元素的行为。

h1上重要的是它是1级标题。它具有含义,这些语义。另一方面,p是段落(大约;有关详细信息,请参阅my question on paragraphs in HTML)。标题和段落是文档的两个不同组成部分并且它们彼此独立使用是很自然的。正确地使用元素,尊重他们定义的语义,对于关闭样式,搜索引擎优化,浏览屏幕阅读器和整体可访问性的漂亮显示是必要的。

答案 1 :(得分:1)

h1到h6是标题标记p是段落标记。默认情况下,大多数浏览器都会显示较大的内容,除非对其应用了重置类型。

 <html>
<head>
<title>Hello World</title> 
</head>
<body>
<h1>Hello World</h1> 
<p>Some Text</p>

</body>
</head>

这是一个jsfiddle所以你可以看到http://jsfiddle.net/snymax/93TSp/ 编辑 http://jsfiddle.net/snymax/93TSp/1/会显示h1 - h6 p和自由文本。

答案 2 :(得分:1)

许多HTML标签在显示方面具有一些特殊含义。 阻止级别内嵌级别。块级元素在语义上定义为以新行开头。内联元素可以在同一行内共享空间。 <h1><p>都是块级元素。 <h1>的一般含义是标题。更大胆,更大的文字。 <p>标记用于放置大文本。说一些事情的描述。建议您根据其含义使用它们。 <span>内联元素的示例。你应该根据你的要求判断如何使用它们。一般的习惯用法是,您只应将块级(和内联级别)仅放在块级元素中,而不应放在内联元素中。更严格地说,除了浏览器之外的一些解析环境(如小型设备发布格式)如果你做了这些事情就会抛出错误。

那就是说,你可以将它们包括在内。

要获得高级理解:Mozilla's trusted documentation

答案 3 :(得分:0)

不,它们不是 - 您可以使用<h1>不带<p>来包围文字。

也许您一直在使用一些具有影响h1 p

的CSS规则的库

答案 4 :(得分:0)

不。

<html>
<head>
</head>
<body>
<h1> My header </h1>
<p> some paragraph </p>
FREE TEXT..  Doesn't need any tags... 
</body>
</html>

答案 5 :(得分:0)

不需要

但可以清理显示的文字。

<h1> its a header </h1>
<p> its a paragraph of text under that specific header</p>
  

结果似乎是一样的   不,不是!

答案 6 :(得分:-4)

在HTML中,即使HTML上没有任何内容,您也可以通过多种方式获取文字,甚至不是<!DOCTYPE>代码!

<p></p>只是HTML的一种设计方式,包括某种字体和大小。

从技术上讲,你可以在<p></p>标签内<h1></h1>,但并不是真的需要,但它会有所不同。

<p>
    <h1>
        This is Possible
    </h1>
</p>

<h1>
    <p>
        This is Possible
    </p>
</h1>

<p>
    This is Possible
</p>

<h1>
    This is Possible
</h1>