it-swarm.com.de

Ist es manchmal schlecht, <BR /> zu verwenden?

Ist es manchmal schlecht, <BR/>-Tags zu verwenden?

Ich frage, weil einige meiner ersten Ratschläge, die mir mein Entwicklungsteam gab, Folgendes waren: Verwenden Sie nicht <BR/>; Verwenden Sie stattdessen Stile. Aber warum? Gibt es negative Ergebnisse bei der Verwendung von <BR/>-Tags?

128
pencilCake

Der Hauptgrund dafür, <br> nicht zu verwenden, ist, dass es nicht semantisch ist. Wenn Sie zwei Elemente in verschiedenen visuellen Blöcken haben möchten, möchten Sie sie wahrscheinlich in verschiedenen logischen Blöcken.

In den meisten Fällen bedeutet dies, dass nur verschiedene Elemente verwendet werden, z. B. <p>Stuff</p><p>Other stuff</p>, und dann die Blöcke mit CSS richtig platziert werden.

Es gibt Fälle, in denen <br> semantisch gültig ist, d. H. Fälle, in denen der Zeilenumbruch Teil der gesendeten Daten ist. Dies ist eigentlich nur auf zwei Anwendungsfälle beschränkt - Poesie und Postanschrift.

140
Gareth

Ich denke, Ihr Entwicklungsteam bezieht sich auf <br /> anstelle des Randabstands. Um Leerzeichen zwischen den Elementen zu schaffen, verwenden Sie das Auffüllen/Rand-Styling über CSS.

Falsche Verwendung von <br />:

<div>
   Content
</div>
<br />
<br />
<br />
<br />
<div>
     More content...
</div>

Gute Verwendung von <br />:

<style>
     div {
          margin-top:10px;
     }
</style>

<div>
   Content<br />
   Line break
</div>

<div>
     More content...
</div>
98
iamkoa

Im Allgemeinen ist <br/> ein Hinweis auf schlechtes semantisches HTML. Der häufigste Fall ist die Verwendung von <br/> zur Deklaration von Absatztrennungen. Dies gibt viel bessere Möglichkeiten, dies semantisch zu tun. Siehe Bett und Frühstück .

Es gibt Gelegenheiten, in denen es das richtige Etikett ist, aber es wird oft genug missbraucht, dass Menschen eine "nicht verwenden" -Mentalität anwenden, um besser semantisches Denken zu erzwingen.

25
fengb

Was von Ihrem Team gemeint war, war wahrscheinlich nicht, um die Absätze aufzuteilen.

<p>I am a paragraph</p>
<p>I am a second paragraph</p>

dies ist der bessere Weg, da Sie die Abstände zwischen den Absätzen mit CSS leicht anpassen können. .__ Ansonsten kann ich mir nichts einfallen lassen, das gegen Zeilenumbrüche steht.

12
Pekka 웃

Dasselbe Konzept trifft zu, warum wir keine Tabellen für das Layout verwenden. Verwenden Sie Tabellen für Tabellen und CSS für das Layout. 

Verwenden Sie <br/> für Zeilenumbrüche in einem Textblock und CSS, wenn Sie das Layout beeinflussen möchten.

8
Dieter G

Die direkte Angabe des Layouts macht es schwierig, die Site beispielsweise für unterschiedliche Seitengrößen oder Schriftarten anzupassen.

4
Martin Beckett

Ich werde im Allgemeinen immer geeignete Ränder und Füllungen für Elemente mithilfe von CSS festlegen - es ist weitaus weniger chaotisch als viele <br />s überall, außer wenn es semantisch korrekt ist.

Wahrscheinlich ist das einzige Mal, dass ich einen <br /> den von CSS festgelegten Rändern und Füllungen vorziehen würde, auch wenn es technisch nicht unbedingt korrekt ist, wenn es sich um einen isolierten Vorfall handelt, bei dem etwas mehr Speicherplatz benötigt wurde. Wenn ich ein ziemlich großes Stylesheet bekommen hätte und es nicht wert wäre, einen zusätzlichen Stil nur für dieses eine Vorkommen einzurichten, könnte ich kann einen <br /> als Einzelstück verwenden.

Wie die meisten Dinge ist <br />s keine schlechte Sache, vorausgesetzt, sie werden korrekt verwendet.

2
BlissC

Sie sollen zur Darstellung von Zeilenumbrüchen verwendet werden. Nichts mehr. Nicht so viel Platz einnehmen wie beim durchschnittlichen Geocities-Standort. Es gibt jedoch nur einen Fall, in dem sie für andere Zwecke als das Setzen einer neuen Zeile nützlich sein können : um die Floats zu löschen.

<br style="clear: both;">
1
BalusC

<br /> sollte nur für Zeilenumbrüche verwendet werden und nicht, um den Stil auf eine Seite anzuwenden. Wenn Sie beispielsweise zwischen den Absätzen zusätzlichen Platz benötigen, weisen Sie ihnen eine Klasse zu und wenden die zusätzliche Auffüllung auf die Absätze an. Verteile deine Absätze nicht mit <br /><br ><br />

1
Zoe

Wenn Sie dies tun: <BR/> <BR/>

Sie erhalten ein unterschiedliches Layout in verschiedenen Browsern.

Tiefer: 
Wenn Sie <BR/> nur für Zeilenumbrüche verwenden - ok. 
Wenn Sie <BR/> als Zeilenabstandshalter verwenden - nicht in Ordnung 

1
G.Y

Verwenden Sie nicht drei oder mehr aufeinanderfolgende <br>s. Dies ist ein Signal, das Sie für stilistische Zwecke verwenden. Nein, Sie sollten es nicht.

Einige würden sagen, dass ein einziger <br> ausreicht und anstelle von zwei sollten Sie <p></p> verwenden, aber es gibt Situationen (z. B. Drehbücher), in denen Sie eine längere Pause einführen möchten, ohne dass ein Themenwechsel oder eine neue Periode beginnt, wie in der Regel ein Absatz tut.

1
ZJR

Hier ein Beispiel, wie <br> das Styling negativ beeinflussen kann (Schnipsel für Visuals ausführen) 

(Beachten Sie den falsch ausgerichteten Button und den ungeraden Abstand rechts):

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">&uarr;</button> 
  </span>
  <button id="moveLeft" value="vasakule">&larr;</button> 
  <button id="moveDown" value="alla">&darr;</button> 
  <button id="moveRight" value="paremale">&rarr;</button> 
  <br>    <!-- note the shifted button and odd space on right -->
  <span>or move with keyboard arrows</span>
</div>

0
mhpreiman

Ich versuche, mein Markup so zu schreiben, dass es bei deaktiviertem CSS leicht lesbar ist. Wenn Sie nur BRs zum Hinzufügen von Abständen verwenden, sollten Sie Ränder und Polsterung verwenden.

0
BStruthers

Sie sind in Ordnung, wenn sie entsprechend verwendet werden. Beispielsweise sollten Sie sie nicht anstelle von <p>-Tags oder zum Erstellen von Abständen zwischen Elementen verwenden. Sie machen wahrscheinlich etwas falsch, wenn Sie zwei hintereinander haben.

0
mpen