在 <br> 或 标题内时,我们应该在标签周围使用空格<p>吗?



我在标题中使用<br>标签(例如h1),作为我渐进式增强的响应式设计的一部分(这会是一个例外吗?) - 我想将其隐藏在较窄的视口上。

当然,CSS规则是:

h1 br {
display: none;
}

但是在HTML中解决这个问题的正确方法是什么?

如果这样说,那么当br被隐藏时,"标题"和"with"之间没有空格:

1) <h1>Example heading<br>with a break right thurr</h1>

那么以下语义正确吗?

2) <h1>Example heading <br>with a break right thurr</h1>

或者这个呢?

3) <h1>Example heading<br> with a break right thurr</h1>

我知道,非常挑剔,但我很好奇。

附言在这种情况下,绝对必须使用br,因为"示例标题"一词比"右边休息"短——使用流体容器会迫使在不需要的地方中断。

此外,正如大卫指出的那样,示例 #2 和 #3 都可以工作——但它们在语义上正确吗?虽然 HTML 标签周围的空格是语义的并且被忽略(这就是我们如何使标记易于阅读)......但是元素标签中的空格呢?他们应该在那里吗?

我认为您对br元素的使用不正确。仅当换行符有意义时才必须使用它,而不是用于布局目的:

br元素只能用于实际属于内容一部分的换行符,如诗歌或地址。

您应该改用span元素:

<h1>Example heading <span>with a break right thurr</span></h1>

<h1><span>Example heading</span> with a break right thurr</h1>

使用像这样的 CSS:

h1 > span {display:block;}

所以现在也没有问题把空间放在哪里。如果使用br,则决定在哪里/是否使用空格应该没有问题,因为它必须是一个有意义的分隔符(不一定是换行符),因此总会有某种分隔符(换行符,分隔字符/图形,语音暂停等)。

我养成了总是在<br>后返回的习惯

<h1>Example heading<br>
with a break right thurr</h1>

然后你就有了你的空白。

但是,unor有一点:如果你不想在某些情况下打破那里,如果你担心语义,你不应该放<br>

打破标题感觉有点奇怪——尽管我理解你的逻辑。

您是否可以考虑将标题放在一定宽度的离散列中?

此外,如果您通过较小的屏幕设备读取此内容,我假设您在@media only screen部分中或类似部分中都有此内容。

<br>编写为<br />(自结束标签)是稍微好一点的做法,但如果在过渡或 html5 文档中<br>工作。

  1. 和 3. ; 语义正确性并没有真正进入它。该部分的语义含义是"这是一个顶部标题";因此,就空格甚至回车而言,分钟并没有特别进入它。任何大于单个空格的空格都将被忽略,元素标签内的空格通常是不希望的。解析器将始终尽力而为(保佑他们...好吧,除了IE),但是如果您在博览会上占用标签内的空间,仍然会完全困惑。< p >将被解释为左括号,字母"p"和右括号,而不是段落标签,例如

还可以考虑使用<wbr>,它为较长的单词提供可选的分词符。

最新更新