Twitter Bootstrap'teki <hr> etiketi düzgün çalışmıyor mu?


94

İşte kodum:

<div class="container">
<div>
<h1>Welcome TeamName1</h1>
  asdf
  <hr>
  asdf

</div>
</div> <!-- /container -->

Hr etiketi beklediğim gibi çalışmıyor. Çizgi çizmek yerine, şöyle bir boşluk yaratır:

görüntü açıklamasını buraya girin

Yanıtlar:


141

css özelliği <hr>şunlardır:

hr {
  -moz-border-bottom-colors: none;
  -moz-border-image: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  border-color: #EEEEEE -moz-use-text-color #FFFFFF;
  border-style: solid none;
  border-width: 1px 0;
  margin: 18px 0;
}

Çok açık gri ve 18 piksel dikey kenar boşluğu olan 1 piksellik bir yatay çizgiye karşılık gelir.

ve sınıfsız <hr>bir içinde olduğu <div>için genişlik, içeriğine bağlıdır.<div>

eğer isterseniz <hr>olmak tam genişliği, yerini <div>ile <div class='row'><div class='span12'>(kapanış etiketleri göre birlikte).

Farklı bir şey bekliyorsanız, bir yorum ekleyerek ne beklediğinizi açıklayın.


3
Teşekkürler! <hr> kodunu bir <div> içine dahil etmeniz gerektiğini bilmiyordum. Garip.
Kyle Carlson

3
Span12'nin Bootstrap'ten son iki yılda bir noktada kaldırıldığını varsayıyorum çünkü buna sahip değilim, ancak vücut içeriğimi ve yatay kuralı her iki satır sınıfına koymak benim için çalıştı.
Casey

1
border-color: #EEEEEE -moz-use-text-color #FFFFFF;sadece ile düzeltborder-color: #EEEEEE;
Slowaways

2
span12, col-sm-12 ile değiştirildi
M_Griffiths

Kodunuzun bu kısmı ( border-width: 1px 0;) 2pxyatay bir çizgiye neden olur ! Bunu şu şekilde değiştirmelisiniz: yatay bir çizgi border-width: 1px 0 0 0;yapmak için 1px.
RAM

42

Yazmak yerine

<hr>

Yazmak

<hr class="col-xs-12">

Ve normal olarak tam genişlik gösterecektir.


6
<div class="w-100"><hr></div>
drzymala

Bootstrap için en zarif çözüm bu, teşekkürler!
Christopher Bales

<hr class="w-100">genişliği ayarlamak için daha apaçık bir yöntem gibi görünüyor.
Robobenklein

40

Bunu, HR arka plan rengini siyaha ayarlayarak çözdüm:

<hr style="width: 100%; color: black; height: 1px; background-color:black;" />

4
Bu tam olarak sorunu çözmüyor, daha çok bir hack gibi ... Önyükleme stilini aşmanın satır içi stilden daha iyi birçok yolu var.
IonicBurger

1
Lütfen @DjangoBurger'ı detaylandırın ve çözümünüzü paylaşın.
James K

1
Sanırım @DjangoBurger çoğunlukla satır içi stillerden şikayet ediyor. Bu stili bir sınıfa koyabilir ve sınıf adını buraya atayabilirdiniz. Çözümünüzü kendi kullanımım için bu şekilde değiştirdim, bu yüzden teşekkür ederim!
dreamerkumar

Kabul edildi - bu zarif bir çare :)
James K

Mükemmel çalışıyor! Bootstrap kullanıyorum ve bir şekilde <hr> alışılmadık bir durumdu - şeffaftı ve açıkça görülmedi.

17

Bootstrap adlı çünkü öyle DEFAULT CSS için <hr />olduğu ::

hr {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #eeeeee;
}

bu iki çizgi arasında 40 piksel boşluk oluşturur

bu nedenle <hr />, sayfanızdaki belirli bir kenar boşluğu stilini değiştirmek isterseniz, bunun gibi bir şey deneyebilirsiniz

<hr style="margin-bottom:5px !important; margin-top:5px !important; " />

<hr /> Sayfanızdaki renk ve kenarlık türü veya kalınlık gibi herhangi bir özelliğin görünümünü / diğer stillerini değiştirmek istiyorsanız, aşağıdaki gibi bir şey deneyebilirsiniz:

<hr style="border-top: 1px dotted #000000 !important; " />

<hr />sayfanızdaki herkes için

<style>
   hr {
       border-top: 1px dotted #000000 !important;
       margin-bottom:5px !important; 
       margin-top:5px !important;
   }
</style>

5

Varsayılan olarak, hrTwitter Bootstrap CSS dosyasındaki öğenin üst ve alt kenar boşluğu 18px. Bir boşluk yaratan budur. Boşluğun daha küçük olmasını istiyorsanız, hröğenin marj özelliğini ayarlamanız gerekir .

Örneğinizde şuna benzer bir şey yapın:

.container hr {
margin: 2px 0;
}

3

Bence aşağıdaki gibi border-color: transparent eklersek daha iyi görünecektir:

<hr style="width: 100%; background-color: black; height: 1px; border-color : transparent;" />

Sınırı şeffaf koymazsanız beyaz olur ve bunun her zaman iyi olduğunu düşünmüyorum.


2

Satır içi stili şu şekilde düzenleyerek hrTag'i özelleştirebildim:

<div class="row"> <!-- You can also position the row if need be. -->
<div class="col-md-12 col-lg-12"><!-- set width of column I wanted mine to stretch most of the screen-->
<hr style="min-width:85%; background-color:#a1a1a1 !important; height:1px;"/>
</div>
 </div>

HrTag artık daha kalın ve daha görünür; aynı zamanda daha koyu gri bir renktir. Önyükleme kodu aslında çok esnektir. Snippet'in yukarıda gösterdiği gibi, satır içi stili veya kendi özel kodunuzu kullanabilirsiniz. Umarım bu birine yardımcı olur.


0

Bootstrap düzenine karşılık gelmesi için bunlardan birini isteyebilirsiniz:

<div class="col-xs-12">
    <hr >
</div>

<!-- or -->

<div class="col-xs-12">
    <hr style="border-style: dashed; border-top-width: 2px;">
</div>

<!-- or -->

<div class="col-xs-12">
    <hr class="col-xs-1" style="border-style: dashed; border-top-width: 2px;">
</div>

Bir DIVızgara elemanı dahil edilmediğinde, düzen farklı cihazlarda fren yapabilir.

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.