有时使用<BR/>
标签不好吗?
我问是因为我的开发团队给我的一些初步建议是:不要使用<BR/>
;不要使用。而是使用样式。但为什么?使用<BR/>
标签时是否会有负面结果?
有时使用<BR/>
标签不好吗?
我问是因为我的开发团队给我的一些初步建议是:不要使用<BR/>
;不要使用。而是使用样式。但为什么?使用<BR/>
标签时是否会有负面结果?
Answers:
不使用的主要原因<br>
是它不是语义的。如果要将两个项目放在不同的可视块中,则可能希望将它们放在不同的逻辑块中。
在大多数情况下,这意味着只使用不同的元素(例如)<p>Stuff</p><p>Other stuff</p>
,然后使用CSS正确地将块隔开。
在某些情况下,<br>
从语义上讲是有效的,即,换行符是要发送的数据的一部分。这实际上仅限于2个用例-诗歌和邮寄地址。
<pre/>
诗歌。这样,您可以明确指定目的是保持原始的构图,包括可能的缩进。
<br>
似乎仅在满足以下所有条件的情况下才是合适的:1.换行符在语义上是有意义的,2.缩进在语义上是没有意义的(否则,您应使用<pre>
,3.没有其他语义上合适的) 。标签,就像一个段落或标题标签的邮件地址满足所有这三个条件等做歌词诗可以振振有词地违反了“缩进是没有意义的”条件,所以可能会更好地放置在。<pre>
。
<br />
在电子邮件的签名中使用怎么样,例如: <footer>Sincerely,<br />StrexCorp</footer>
意见?
我认为您的开发团队正在<br />
指代边距间距。要在元素之间留出空白,请通过CSS使用padding / margin样式。
错误使用<br />
:
<div>
Content
</div>
<br />
<br />
<br />
<br />
<div>
More content...
</div>
善用<br />
:
<style>
div {
margin-top:10px;
}
</style>
<div>
Content<br />
Line break
</div>
<div>
More content...
</div>
我尝试以禁用CSS时易于阅读的方式编写标记。如果仅使用BR来增加间距,则最好使用边距和填充。
它们将用来表示换行符。而已。不像一般的地理位置那样填满空间。但是,只有一种情况,它们可能比换行符用于其他目的:清除浮点数。
<br style="clear: both;">
overflow:auto
元素来解决此“ hack”问题。
这是一个示例,如何<br>
对样式产生负面影响(运行视觉效果的代码段)
(请注意右侧未对齐的按钮和奇数空格):
button {
width: 70px;
height: 70px;
}
#arrows {
border: solid thin red;
display: inline-block;
}
#arrows span:first-of-type {
text-align: center;
display: block;
}
#moveUp {
margin: 0;
}
/* In the current case instead of <br> use display */
/*
#arrows span:last-of-type {
display: block;
}
*/
<div id="arrows">
<span>
<button id="moveUp" value="üles">↑</button>
</span>
<button id="moveLeft" value="vasakule">←</button>
<button id="moveDown" value="alla">↓</button>
<button id="moveRight" value="paremale">→</button>
<br> <!-- note the shifted button and odd space on right -->
<span>or move with keyboard arrows</span>
</div>
在HTML(最多HTML 4):使用<br>
在HTML 5: <br>
是优选的,但<br/>
并<br />
也是可接受
在XHTML: <br />
是优选的。也可以使用<br/>
或<br></br>
因此,使用<br>
标记是完全有效的HTML。但是<br>
不建议使用?
不使用的主要原因<br>
是因为它不是语义标记并且内部没有内容。可以避免像
<p>some<br>text<p>
可以标记<br>
为
<p>some</p>
<p>text<p>
如果您正在使用<br>
其他目的,例如顶部间距等,则可以通过CSS margin
属性来实现。