html - 标记对话(或采访)的最语义方式?

标签 html semantics semantic-markup

我正在尝试找出最语义化的方式来标记这样的内容。

John: blah blah 
Paul: blah blah 
George: blah blah 
Ringo: blah blah 

John:   blah blah 
Paul:   blah blah 
George: blah blah 
Ringo:  blah blah 

理想情况下,CSS 可以灵活地执行任何一个操作,或者将其分成一个段落,可以显示或不显示名称。我考虑过使用 before: 选择器来添加名称,但我也希望它们是可链接的。例如,如果林戈有推特个人资料,我会链接到他的推特个人资料。它也应该在屏幕阅读器中正确阅读。

最佳答案

HTML5 规范 discusses this ,其要点是:

Authors are encouraged to mark up conversations using p elements and punctuation. Authors who need to mark the speaker for styling purposes are encouraged to use span or b. Paragraphs with their text wrapped in the i element can be used for marking up stage directions.

所以,最终,是这样的:

<p><span>John:</span> blah blah</p>

<p><span>Paul:</span> blah blah</p>

<p><span>George:</span> blah blah</p>

<p><span>Ringo:</span> blah blah</p>

这将按照您描述的方式启用样式。当然,如果需要,您也可以添加 class 属性。不使用 :before 选择器将名称放在 CSS 中的本能是很好的——此信息绝对应该包含在标记中。

关于html - 标记对话(或采访)的最语义方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8798685/

相关文章:

html - 为字体颜色设置背景图像?

php - 背景图片不显示

algorithm - 缩短文本,只保留重要的句子

css - "left"和 "right"是非语义 CSS 类名吗?

html - 如何使可选择的文本与显示的不同

html - 什么样的 HTML 标记适合采访的转录?

html - 将按钮一个放在右边,两个放在旁边(左边),但在 HTML 中垂直堆叠

c - 结构中的指针奇怪的结果

javascript - 为什么在 JS 中 +str 比 str*1 更好地将字符串转换为数字?

html - 全身覆盖,内部 div 可点击