<BR /> kullanmak bazen kötü mü?


157

<BR/>Etiketleri kullanmak bazen kötü mü ?

Soruyorum çünkü geliştirme ekibimin bana verdiği ilk tavsiyelerden bazıları şuydu: Kullanma <BR/>; bunun yerine stilleri kullanın. Ama neden? <BR/>Etiketleri kullanırken olumsuz sonuçlar var mı?


10
En iyi cevabı bulmanın en iyi yolu geliştirici ekibinize gidip onlara NEDEN sormaktır?
azamsharp

48
Ekip üyeleri yerine StackOverflow'dan yanıt almaya çalışmak aniden yanlış bir şey mi yapıyor?
Nosredna

7
Hayır, sadece biri ona öznel bir cevap verdi ve arkasındaki mantığı tahmin etmemizi istiyor ... Sadece git ve sana öznel yanıtı veren kişiye sor, özellikle de yakınlardalarsa (aynı geliştirme ekibinde)
Gabriel Magana

8
Genellikle "ilk tavsiye" çalışan yeni olduğunda gelir. Yeni bir çalışan her zaman "neden?" Diye sormak istemez. Açıkçası, nedenini sormanın en iyi olduğu zamanlar var ama bence Burak Özdoğan muhtemelen bu soruları okuduktan sonra "neden" i anlıyor. Ya da en azından konuyla ilgili büyük şeylerde HTML topluluğunun tartışmak için yeterince iyi olduğunu anlar. Buraya sormak için doğru hareketi yaptığını söyleyebilirim.
Nosredna

5
Tavsiyeni anlıyorum ve senin türün doğru. Ancak mesele, yeni bir ekibe girdiğinizde kısa sürede çok fazla girdi elde edersiniz. Ve bunlardan bazılarına değinildi; parantez içinde verilen bir ayrıntı gibi. Burada iki nedenden dolayı sormak istedim: Bir cevap almak ve ona nasıl yaklaşacağını görmek için farklı görüşler görmek. teşekkürler beyler!
pencilCake

Yanıtlar:


173

Kullanmamanın temel nedeni semantik<br> olmamasıdır . Farklı görsel bloklarda iki öğe istiyorsanız, muhtemelen farklı mantıksal bloklarda olmasını istersiniz.

Çoğu durumda bu, örneğin yalnızca farklı elemanların <p>Stuff</p><p>Other stuff</p>kullanılması ve daha sonra blokların düzgün bir şekilde boşluk bırakılması için CSS kullanılması anlamına gelir .

Durumlar vardır <br>semantik satır atlar geçerli, yani vakalar olduğu kısım Gönderdiğiniz verilerin. Bu gerçekten sadece 2 kullanım durumu ile sınırlıdır - şiir ve posta adresleri.


38
Şahsen <pre/>şiir kullanmayı tercih ederim . Bu şekilde, niyetin olası girintiler de dahil olmak üzere orijinal kompozisyonu korumak olduğunu açıkça belirtirsiniz.
Michał Górny

6
@ MichałGórny iyi bir noktaya işaret eder , ancak aşağıdaki koşulların tümü geçerli <br>olduğunda uygun görünmektedir : 1. Yeni satırlar anlamsal olarak anlamlıdır, 2. Girinti anlamsal olarak anlamlı değildir (aksi takdirde a , 3 kullanmalısınız. posta adresleri bu koşulların üçünü de yerine getirir ve şarkı sözleri de şiir yapar. Şiir 'girinti anlamlı değildir' koşulunu mantıklı bir şekilde ihlal edebilir ve bu yüzden de daha iyi yerleştirilebilir .<pre><pre>
Mark Amery

2
<br />Bir e-postanın imzalanmasında aşağıdaki gibi kullanmaya ne dersiniz : <footer>Sincerely,<br />StrexCorp</footer> Görüşler?
JHS

109

Bence geliştirme ekibiniz <br />marj aralığı yerine atıfta bulunuyor . Öğeler arasında boşluk bırakmak için CSS aracılığıyla dolgu / kenar boşluğu stili kullanın.

Kötü kullanımı <br />:

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

Aşağıdakilerin iyi kullanımı <br />:

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

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

<div>
     More content...
</div>

4
Eğer <br> ler kaldırdığınız takdirde hiçbir şey yok, çünkü sadece senin <br> ler kaldırmak ve CSS ekleyemezsiniz için stil. Boşlukları doldurmaya (tam anlamıyla) yardım etmeden "satır sonlarını kaldır" demek inanılmaz derecede yararlı değil
Gareth

7
Haklısın iamkoa, ama bu nedenini açıklamıyor . Dolayısıyla soruya cevap vermiyor. 24 upvotes biraz fazla görünüyor.
Orbit'te Hafiflik Yarışları

@iamkoa Sen açıklayan değildir neden .
Fabian Picone

Ben ikinci seçenek daha iyi olduğunu düşünüyorum çünkü daha temiz ve daha basit Ben gerekli değildir düşünüyorum br
simon

26

Genellikle <br/>zayıf semantik HTML'nin bir göstergesidir. En yaygın durum, <br/>paragrafı semantik olarak yapmanın çok daha iyi yolları olan paragraf ayrımlarını bildirmek için kullanmaktır . Bakınız Yatak ve BReakfast .

Kullanmak için uygun etiketin olduğu durumlar vardır, ancak insanların daha iyi anlambilimsel düşünceyi zorlamak için "kullanmayın" zihniyeti benimsemeleri yeterince sık kullanılır.


13

Ekibiniz tarafından kastedilen, muhtemelen paragrafları ayırmak için <br> s kullanmıyordu.

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

bunu yapmanın daha iyi bir yoludur, çünkü paragraflar arasındaki boşlukları CSS ile kolayca ayarlayabilirsiniz. Bunun dışında hat kesmeleriyle konuşan hiçbir şey düşünemiyorum.


9

Aynı kavram, mizanpaj için tabloları neden kullanmadığımız için de geçerlidir - tablolar için tabloları ve mizanpaj için CSS'yi kullanın.

Kullanın <br/>Eğer düzenini etkileyecek istiyorsanız metin ve CSS bir blok kırma hatları için.


4

Düzeni doğrudan belirtmek, siteyi örneğin farklı sayfa boyutları veya yazı tipleri için uyarlamayı zorlaştırır.


2

Genelde her zaman CSS kullanan elemanlar için uygun kenar boşlukları ve dolgu malzemesi koyacağım - <br />daha semantik olarak doğru olmak dışında her yerde bir sürü s'den daha az dağınık .

Muhtemelen <br />teknik olarak doğru olmasa bile, CSS tarafından belirlenen kenar boşluklarına ve dolgulara tercih edeceğim tek şey, biraz daha fazla alana ihtiyaç duyulan yalıtılmış bir olaydı. Oldukça geniş bir stil var dedim, sadece o tek gelişimi açısından ek bir tarzda yukarı değer ayarını görünmüyordu, ben edebilir bir kullanmak <br />bir one-off olarak.

Çoğu şey gibi, <br />doğru kullanılmaları koşuluyla kötü bir şey değildir.


1

İşaretlememi CSS devre dışı bırakıldığında kolayca okunabilecek şekilde yazmaya çalışıyorum. Yalnızca boşluk eklemek için BR'ler kullanıyorsanız kenar boşlukları ve dolgu kullanmak daha iyidir.


1

<br />bir sayfaya stil uygulamak için değil, yalnızca satır kesmeleri için kullanılmalıdır. Örneğin, paragraflar arasında fazladan alana ihtiyacınız varsa, onlara bir sınıf verin ve paragraflara fazladan dolgu uygulayın. Paragraflarınızı şu adrese dağıtmayın:<br /><br ><br />


1

Yeni satırları temsil etmek için kullanılacaktır. Başka bir şey yok. Ortalama geocities sitesinde olduğu gibi alanı doldurmamak. Bununla birlikte , yeni bir satır koymaktan başka amaçlar için yararlı olabilecekleri sadece bir durum vardır : şamandıraları temizlemek.

<br style="clear: both;">

1
Kullanılsa da, bu yöntem geçerli XHTML değildir.
iamkoa

2
Bunun overflow:autoyerine içeren öğeyi kullanarak bu "hack" ile uğraşabilirsiniz .
09:23

2
@iamkoa: XHTML kullanmıyorum. HTML XML değil HTML'dir.
BalusC

1

Kullanmayın üç veya daha fazla ardışık <br>sen stil amacıyla kullanıyorlar bir sinyal olduğunu, s ve hayır, atlatma.

Bazıları bir single'ın <br>yeterli olduğunu ve iki yerine kullanmanız gerektiğini söyleyebilir <p></p>, ancak genellikle bir paragraf değişikliği gibi, bir konu değişikliği veya yeni bir dönem başlangıcı ima etmeden daha uzun bir ara vermek istediğiniz durumlar (örn. Senaryolar) vardır.


0

Uygun şekilde kullanılırlarsa iyi durumdalar. Örneğin, bunları <p>etiketler yerine veya öğeler arasında boşluk oluşturmak için kullanmamalısınız . Arka arkaya iki tane varsa muhtemelen yanlış bir şey yapıyorsunuz.


0

Eğer bunu yaparsan: <BR/> <BR/>

Farklı tarayıcılarda farklı düzen elde edersiniz.

Daha derine: Sadece satır sonları için
kullanıyorsanız <BR/>- tamam. Satır aralayıcı olarak
kullanıyorsanız <BR/>- tamam değil.


0

Aşağıda <br>stili nasıl olumsuz etkileyebileceğine dair bir örnek (görseller için snippet'i çalıştırın)

(yanlış hizalanmış düğmeyi ve sağdaki tuhaf alanı not edin):

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>


-2

(HTML 4'e kadar) HTML'de: Kullanım <br>
HTML 5,: <br> tercih edilir, ancak <br/>ve <br />de kabul edilebilir
XHTML: <br /> tercih edilir. Ayrıca <br/>veya<br></br>

Dolayısıyla <br>etiket kullanımı mükemmel bir şekilde geçerli HTML'dir. Ama kullanımı <br>tavsiye edilmez mi?

Kullanmamanın temel nedeni <br>, anlamsal etiket olmaması ve içinde içerik olmamasıdır. Kullanımından kaçınılabilir,

<p>some<br>text<p>

olmadan işaretlenebilir <br>olarak

 <p>some</p>
 <p>text<p>

<br>CSS marginözelliği ile elde edilebilecek üst boşluk vb. Gibi başka bir amaç kullanıyorsanız .


1
<p> kullanmanın üst ve alt kısma ~ 16px kenar boşluğu ekleyeceğini unutmayın. Satırları olması gerekenden daha fazla yükseklik kullanarak boşluk bırakmamak için <p> etiketinin kenar boşluğunun her birini 0 piksel olarak ayarlayın.
Satbir Kira
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.