何时使用<span>代替<p>?</p> </span>

时间:2009-12-15 15:34:43

标签: html

正如问题所示,如果我要在HTML中添加一些文字,那么何时应该使用<p>,何时应该使用<span>

13 个答案:

答案 0 :(得分:83)

在语义上,您使用<p>标记来指示段落。 <span>用于将CSS样式和/或类应用于文本和内联元素的任意部分。

答案 1 :(得分:69)

您应该记住,HTML旨在描述它包含的内容。

所以,如果你想传达一个段落,那么就这样做。

但是,你的比较并不完全正确。更直接的比较是

  

何时使用<div>代替<p>

因为两者都是块级元素。

<span>是内联的,非常类似于主播(<a>),<strong>,强调(<em>)等,所以请记住,默认情况下,它是默认的html和自然写作中的自然,一个段落会导致它本身前后的中断,如<div>

有时,在设计事物时 - 内联事物 - <span>非常适合给你一些“钩住”css的东西,但它是一个没有语义或风格意义的空标签。

答案 2 :(得分:11)

<p>标记是p aragraph,因此,它是元素(例如,h1和{{ 1}}),而div是内联元素(例如,spanb

默认情况下,块元素会在其上方和下方创建一些空格,除非您为它们设置a属性,否则不能在它们旁边对齐任何内容。

内联元素处理段落内的文本跨度。它们通常没有边距,因此,您不能为其设置float

答案 3 :(得分:4)

从语义上讲,p是段落标记,应该用于格式化文本段落。 span是一种内联格式更改,不会在语义上处理。

答案 4 :(得分:4)

Span完全是非语义的。它没有任何意义,仅仅作为美容效果的元素。

段落具有语义含义 - 它们告诉机器(如浏览器或屏幕阅读器)它们封装的内容是一个文本块,并且与书中的一段文本具有相同的含义。

答案 5 :(得分:4)

span是一个内联格式元素,其上面或下面没有换行符。

p是一个块元素,它具有上下隐含的换行符。

http://w3schools.com/tags/default.asp

答案 6 :(得分:3)

一个实际的解释:默认情况下,<p> </p>会在所附文本之前和之后添加换行符(因此它会创建一个段落)。 <span>不会这样做,这就是为什么它被称为 inline

答案 7 :(得分:2)

p标记表示段落元素。它应用了边距/填充。跨度是一种没有样式的内联标记。一个重要的区别是,当span是内联时,p是一个块元素,这意味着当<p>Hi</p><p>There</p>并排时,<span>Hi</span><span>There</span>会出现在不同的行上。

答案 8 :(得分:2)

当我们当时使用普通文字时,我们需要<p>代码。当我们使用普通文字时,我们需要<span>代码

答案 9 :(得分:1)

&LT;跨度&GT;是内联标记,&lt; p&gt;是一个块标记,用于段落。浏览器将在段落下方呈现空白行,而&lt; span&gt; s将在同一行上呈现。

答案 10 :(得分:0)

标签是块级元素,但标签是内联元素。通常我们使用span标签在块元素内设置样式,但是您不需要使用span标签来内嵌样式。要做的是使用“ display:inline”将块元素转换为行内元素

答案 11 :(得分:0)

说明

p 元素是块级元素,因此,在 line/ text 前后添加 padding 和 margin。但是 span 是行内元素,因此不会在行前后添加任何填充和边距。我们实际上使用span元素来做样式,它在HTML中没有语义,但是p元素是块元素,在HTML中有语义。

答案 12 :(得分:-5)

p {
    float: left;
    margin: 0;
}

周围没有间距,看起来与span相似。