Twitter Bootstrap'te bir tablodaki metni ortalamak


115

Bazı nedenlerden dolayı, tablonun içindeki metin hala ortalanmamış. Neden? Metni tablonun içinde nasıl ortalayabilirim?

Gerçekten Netleştirmek için: Örneğin, "Lorem" in dört "1" in ortasında oturmasını istiyorum.

@import url('http://twitter.github.com/bootstrap/assets/css/bootstrap.css');
table,
thead,
tr,
tbody,
th,
td {
  text-align: center;
}
<table class="table">
  <thead>
    <tr>
      <th>1</th>
      <th>1</th>
      <th>1</th>
      <th>1</th>
      <th>2</th>
      <th>2</th>
      <th>2</th>
      <th>2</th>
      <th>3</th>
      <th>3</th>
      <th>3</th>
      <th>3</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td colspan="4">Lorem</td>
      <td colspan="4">ipsum</td>
      <td colspan="4">dolor</td>
    </tr>
  </tbody>
</table>

JSFiddle

Yanıtlar:


149

.table tdYerine merkezi, sola 'ın text-align ayarlanır.

Bunu eklemek tüm tde-postalarınızı ortalamalıdır:

.table td {
   text-align: center;   
}

@import url('https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css');
table,
thead,
tr,
tbody,
th,
td {
  text-align: center;
}

.table td {
  text-align: center;
}
<table class="table">
  <thead>
    <tr>
      <th>1</th>
      <th>1</th>
      <th>1</th>
      <th>1</th>
      <th>2</th>
      <th>2</th>
      <th>2</th>
      <th>2</th>
      <th>3</th>
      <th>3</th>
      <th>3</th>
      <th>3</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td colspan="4">Lorem</td>
      <td colspan="4">ipsum</td>
      <td colspan="4">dolor</td>
    </tr>
  </tbody>
</table>

JSFIDDLE güncellendi


48
Daha sonraki sürümlerde bunun için bir metin merkezi sınıfı vardır.
MGP

9
dikkat: .table td {text-align: center; } TÜM
tank avcılarınızı ortalayacak

9
@ xr09 Evet var .text-center, ama özgüllüğü .table tdyine de onu yenecek. Bu nedenle bootstrap'in doğrudan.table
Sinetheta

6
Ekle .texter-centeriçinde <table>ve tüm satırları merkezli hale gelecektir.
chaim

@chaim yorumu cevap olarak gönderilmelidir. Bootstrap-vue 2.0.1
MrCodeX

177

Bootstrap 3'te (3.0.3) "text-center"sınıfı bir tdelemana eklemek kutudan çıkar.

Yani, some textbir tablo hücresinde aşağıdaki merkezler :

<td class="text-center">some text</td>

3
Tüm .table td stilini değiştirmek yerine bu çözümü beğendim.
Stuart

Ayrıca "text-center" sınıfını tablo öğesine de ekleyebilirsiniz.
shad0wec

Bu gerçek cevap.
Nyxynyx

33

Hızlı ve temiz mod için html ve Css için en iyi karışımın kim olduğunu düşünüyorum:

<table class="table text-center">
<thead>
        <tr>                    
        <th class="text-center">Uno</th>
        <th class="text-center">Due</th>
        <th class="text-center">Tre</th>
        <th class="text-center">Quattro</th>
    </tr>
</thead>
<tbody>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
    </tr>
</tbody>
</table>

<table>init etiketini kapatın ve istediğiniz yere kopyalayın :) Umarım yararlı olur İyi günler w stackoverflow

ps Bootstrap v3.2.0


1
bu sorunun zaten cevabı varken, yeni cevap göndermenin bir anlamı yok !!
Pragnesh Ghoda シ

29

Hücrenin içine "text-center" sınıfına sahip bir div ekleyerek css'yi değiştirmeden td'leri hizalayabilirsiniz:

    <td>
        <div class="text-center">
            My centered text
        </div>
    </td>

1
Kim tanımladı class?
Amol M Kulkarni

6
Anlayabildiğim kadarıyla, Bootstrap 2.3'te, td {text-align:left}işleri ortalamak için ek girişimleri geçersiz kılacaktır. Başarısız olarak bu şekilde yapmaya çalıştım.
Jason Lowenthal

12
<td class="text-center">

ve bootstrap.css'deki .text-center'ı düzeltin:

.text-center {
    text-align: center !important;
}

3
Bootstrap.css'yi doğrudan değiştirmek istemediğinize inanıyorum.
Mike Cole

3
Bootstrap.css'deki .text-center'ı düzeltmem gerekmedi, bu onsuz çalıştı.
user573335

6

Aynı sorunu yaşadım ve kullanmadan çözmenin daha iyi bir yolu !important, CSS'mde aşağıdakileri tanımlamaktı:

table th.text-center, table td.text-center { 
    text-align: center;
}

Bu şekilde text-centersınıfın özgüllüğü tablolarda doğru çalışır.


6

Sadece bir kez ise, stil sayfanızı değiştirmemelisiniz. Sadece bunu düzenleyin td:

<td style="text-align: center;">

Şerefe


4

Bootstrap'in temel özelliklerinden biri, önemli etiketinin kullanımını kolaylaştırmasıdır. Yukarıdaki cevabı kullanmak amacı geçersiz kılacaktır. Bootstrap'i kendi css dosyanızdaki sınıfları değiştirerek ve boostrap css'i ekledikten sonra bağlayarak kolayca özelleştirebilirsiniz.



0

sadece çevreye aşağıdaki <tr>gibi özel bir sınıf verin :

<tr class="custom_centered">
  <td>1</td>
  <td>2</td>
  <td>3</td>
</tr>

ve css'in yalnızca özel sınıfınızla birlikte <td>bir içindeki e'leri seçmesini <tr>sağlayın.

tr.custom_centered td {
  text-align: center;
}

bunun gibi, diğer tabloları geçersiz kılma veya hatta bir önyükleme temel sınıfını geçersiz kılma riskini almazsınız (önceki bazılarının önerdiği gibi).

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.