如何在语义上标记诗文?

时间:2013-02-06 16:57:50

标签: html5 meta-tags semantics semantic-web semantic-markup

诗歌用什么?

  • pre
  • blockquote
  • code
  • 别的什么?

2 个答案:

答案 0 :(得分:28)

请勿使用code(除非计算机代码是诗歌的一部分)。不要使用blockquote(除非你引用一首诗)。

空格/换行符:prebr

您可以使用pre element。规范提供了一个(信息丰富的)示例:

  

以下是一首当代诗歌,它使用pre元素来保留其不同寻常的格式,这种格式构成了诗歌本身的一部分。

<pre>                maxling

it is with a          heart
               heavy

that i admit loss of a feline
        so           loved

a friend lost to the
        unknown
                                (night)

~cdr 11dec07</pre>

但是,如果诗中包含“更多”而不仅仅是有意义的换行符,我只会使用pre元素(例如,在此示例中,水平空格是有意义的)。

如果你有一首简单的诗,我会选择br element

  

br元素必须仅用于实际上是内容部分的换行符,例如诗歌或地址。

容器:p

对于大多数诗歌来说,p element是正确的候选人(当然还有几个 p元素)。规范有(资料性)示例:

<p>There was once an example from Femley,<br>
Whose markup was of dubious quality.<br>
The validator complained,<br>
So the author was pained,<br>
To move the error from the markup to the rhyming.</p>

Also

  

例如,地址也是一个段落,如诗歌中的一个表单,一个副行或一个节的一部分。

结构:(articlefigure

根据上下文(内容,页面结构......),切片元素可能是合适的(在大多数情况下为article)。

同样取决于上下文,figure element可能是合适的:

  

在这里,诗歌的一部分使用figure标记。

<figure>
 <p>'Twas brillig, and the slithy toves<br>
 Did gyre and gimble in the wabe;<br>
 All mimsy were the borogoves,<br>
 And the mome raths outgrabe.</p>
 <figcaption><cite>Jabberwocky</cite> (first verse). Lewis Carroll, 1832-98</figcaption>
</figure>

但是不要在所有诗歌中使用这些,如果它们的使用是正确的,它实际上取决于页面。

杂项。 &安培;琐事

答案 1 :(得分:5)

我寻找相同的信息,同样,没有找到任何明确的“最佳实践” - 所以我想我只需要找出自己的方法。根据规范,<p>标记作为节标记确实有意义,线条除以<br> s - 但我发现标记样式没有提供足够的灵活性。

具体来说,我想控制缩进。例如,如果一行对于文本列的宽度运行得太宽,则它不应该只是中断:它的延续应该缩进。如果每条线都是它自己的块元素,那么这个悬挂缩进只能实现(据我所知)。所以在我的情况下,我已经将每个诗歌行<p>与一个班级(比如说“诗歌行”)。然后我可以使用以下CSS:

.poetry-line {
    text-indent: -2em;
    margin-left: 2em;
}

在另一个例子中,我发布的诗每隔一行都缩进,在节的两端有一些不规则。我只能在每一行之间只有<br>来实现这种效果。我必须为“缩进行”创建一个新类并手动应用它。

我只是分享我的经验。我想我的建议是你为每一行使用一个块级元素,用于格式化。这可能是<p>,或者我猜您可以使用CSS将<span>的“显示”设置为“阻止”。在任何情况下,我认为规范在行之间使用<br>的示例对大多数诗歌都不起作用:每一行都需要是它自己的元素。