Textausrichtungsklasse für innerhalb einer Tabelle


724

Gibt es eine Reihe von Klassen im Bootstrap-Framework von Twitter, die Text ausrichten?

Zum Beispiel habe ich einige Tabellen mit $Summen, die ich rechts ausrichten möchte ...

<th class="align-right">Total</th>

und

<td class="align-right">$1,000,000.00</td>

Antworten:


1412

Bootstrap 3

v3 Textausrichtungsdokumente

<p class="text-left">Left aligned text.</p>
<p class="text-center">Center aligned text.</p>
<p class="text-right">Right aligned text.</p>
<p class="text-justify">Justified text.</p>
<p class="text-nowrap">No wrap text.</p>

Beispiel für die Textausrichtung von Bootstrap 3

Bootstrap 4

v4 Textausrichtungsdokumente

<p class="text-xs-left">Left aligned text on all viewport sizes.</p>
<p class="text-xs-center">Center aligned text on all viewport sizes.</p>
<p class="text-xs-right">Right aligned text on all viewport sizes.</p>

<p class="text-sm-left">Left aligned text on viewports sized SM (small) or wider.</p>
<p class="text-md-left">Left aligned text on viewports sized MD (medium) or wider.</p>
<p class="text-lg-left">Left aligned text on viewports sized LG (large) or wider.</p>
<p class="text-xl-left">Left aligned text on viewports sized XL (extra-large) or wider.</p>

Beispiel für die Textausrichtung von Bootstrap 4


29
Dies funktioniert leider nicht für Tabellenzellen. Es kann einfach ein Problem mit der CSS-Bestellung sein. Siehe dieses Problem [ github.com/twitter/bootstrap/issues/6837] . Sollte in Version 3.0 behoben sein.
David

26
Atm Ich starte <td> <div class = 'text-center'> bootin </ div> </ td>, um dies zu umgehen.
Michael J. Calkins

3
Ich wünschte, Bootstrap hätte die Haltepunkte mit dieser Klasse wie folgt verwendet: text-right-md zum Ausrichten von Text nach rechts nur für Medium Up.
Eric Bishard

2
<p class = "text-left"> Links ausgerichteter Text. </ p> <p class = "text-center"> Ausgerichteter Text zentrieren. </ p> <p class = "text-right"> Rechts ausgerichteter Text. </ p> <p class = "text-rechtfertigen"> Begründeter Text. </ p> <p class = "text-nowrap"> Kein Zeilenumbruch. </ p>
user5026837

1
Es ist seltsam, dass ich versucht habe, text-md-right (und xs & lg) zu verwenden, aber sie würden nicht funktionieren. Ich war in Codepen, damit das vielleicht etwas damit zu tun hat. Wie auch immer, diese Antwort hat bei mir funktioniert. Vielen Dank!
Edson

76

Die Verwendung von Bootstrap 3.x text-rightfunktioniert einwandfrei:

<td class="text-right">
  text aligned
</td>

Sie können dies auch auf die gesamte Zeile anwenden: <tr class = "text-right"> <td> Text ausgerichtet </ td> </ tr>
Glade Mellor

46

Nein, Bootstrap hat keine Klasse dafür, aber diese Art von Klasse wird als "Utility" -Klasse betrachtet, ähnlich der von @anton erwähnten ".pull-right" -Klasse.

Wenn Sie sich utilities.less ansehen, werden in Bootstrap nur sehr wenige Utility-Klassen angezeigt. Der Grund dafür ist, dass diese Art von Klasse im Allgemeinen verpönt ist und empfohlen wird, entweder für: a) Prototyping und Entwicklung verwendet zu werden, damit Sie schnell erstellen können Entfernen Sie Ihre Seiten und entfernen Sie dann die Pull-Right- und Pull-Left-Klassen, um Floats auf semantischere Klassen oder auf die Elemente selbst anzuwenden, oder b) wenn dies eindeutig praktischer ist als eine semantischere Lösung.

In Ihrem Fall sieht es nach Ihrer Frage so aus, als ob Sie möchten, dass bestimmter Text rechts in Ihrer Tabelle ausgerichtet wird, aber nicht der gesamte. Semantisch wäre es besser, so etwas zu tun (ich werde hier nur ein paar Klassen zusammenstellen, mit Ausnahme der Standard-Bootstrap-Klasse .table):

  <table class="table price-table">
    <thead>
      <th class="price-label">Total</th>
    </thead>
    <tbody>
      <tr>
        <td class="price-value">$1,000,000.00</td>
      </tr>
    </tbody>
  </table>

Wenden Sie einfach die Deklarationen text-align: leftoder text-align: rightauf die Preis-Wert- und Preis-Label-Klassen an (oder welche Klassen auch immer für Sie arbeiten).

Das Problem bei der Anwendung align-rightals Klasse besteht darin, dass Sie das Markup und die Stile wiederholen müssen, wenn Sie Ihre Tabellen umgestalten möchten. Wenn Sie semantische Klassen verwenden, können Sie möglicherweise nur den CSS-Inhalt umgestalten. Wenn Sie sich die Zeit nehmen, eine Klasse auf ein Element anzuwenden, empfiehlt es sich, dieser Klasse einen semantischen Wert zuzuweisen, damit das Markup für andere Programmierer (oder Sie drei Monate später) einfacher zu navigieren ist.

Eine Möglichkeit, sich das vorzustellen, ist folgende: Wenn Sie die Frage "Wofür ist das?" Stellen, erhalten Sie keine Klarstellung aus der Antwort "rechts ausrichten".


1
Übrigens, ich bin sicher, Sie können mit den Klassennamen besser umgehen als mit dem, was ich gewählt habe. aber das war nicht der Schwerpunkt
Jonschlinkert

3
Das haben sie damals nicht getan, und IMO sollte es immer noch nicht.
Jonschlinkert

34

Bootstrap 2.3 hat Utility - Klassen text-left, text-rightund text-center, aber sie funktionieren nicht in Tabellenzellen. Bis Bootstrap 3.0 veröffentlicht wird (wo das Problem behoben wurde) und ich den Wechsel vornehmen kann, habe ich dies zu meinem Site-CSS hinzugefügt, das nach dem Laden geladen wird bootstrap.css:

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

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

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

26

Fügen Sie einfach ein "benutzerdefiniertes" Stylesheet hinzu, das nach dem Bootstrap-Stylesheet geladen wird. Die Klassendefinitionen sind also überladen.

Deklarieren Sie in diesem Stylesheet die Ausrichtung wie folgt:

.table .text-right {text-align: right}
.table .text-left {text-align: left}
.table .text-center {text-align: center}

Jetzt können Sie die "allgemeinen" Ausrichtungskonventionen für td- und th-Elemente verwenden.


23

Ich denke, weil CSS bereits text-align:rightAFAIK hat, hat Bootstrap keine spezielle Klasse dafür.

Bootstrap hat "Pull-Right" für schwebende Divs usw. auf der rechten Seite.

Bootstrap 2.3 ist gerade herausgekommen und hat Textausrichtungsstile hinzugefügt:

Bootstrap 2.3 veröffentlicht (07.02.2013)


1
Ja, ich wollte nicht für jedes Element Inline-Stile verwenden. Ich weiß, wie man nach rechts zieht, aber ich wollte nicht, dass die Elemente schweben. Ich könnte einfach eine Klasse hinzufügen, wenn es keine gibt :)
Mediabeastnz

15

Bootstrap 4 kommt ! Die in Bootstrap bekannten Dienstprogrammklassen 3.xsind jetzt für Haltepunkte aktiviert. Die Standardhaltepunkte sind: xs, sm, md, lgund xl, so dass diese Textausrichtung Klassen in etwa so aussehen .text-[breakpoint]-[alignnment].

<div class="text-sm-left"></div> //or
<div class="text-md-center"></div> //or
<div class="text-xl-right"></div>

Wichtig: Zum Zeitpunkt des Schreibens ist Bootstrap 4 nur in Alpha 2. Diese Klassen und ihre Verwendung können ohne vorherige Ankündigung geändert werden.


Dies überraschte mich beim Lesen von Bootstrap 3-Dokumenten in einer Bootstrap 4-Installation. Danke für die Erinnerung!
Ben Simpson

12

Bootstrap-Textausrichtung in Version 3.3.5:

 <p class="text-left">Left</p>
 <p class="text-center">Center</p>
 <p class="text-right">Right</p>

CodePen-Beispiel


11

Die folgenden Codezeilen funktionieren ordnungsgemäß. Sie können die Klassen wie Textmitte, links oder rechts zuweisen. Der Text wird entsprechend ausgerichtet.

<p class="text-center">Day 1</p> 
<p class="text-left">Day 2</p> 
<p class="text-right">Day 3</p>

Hier muss keine externe Klasse erstellt werden. Dies sind die Bootstrap-Klassen und haben ihre eigene Eigenschaft.


10

Sie können dieses CSS unten verwenden:

.text-right {text-align: right} /* For right align */
.text-left {text-align: left} /* For left align */
.text-center {text-align: center} /* For center align */

8

Die .text-alignKlasse ist absolut gültig und benutzerfreundlicher als eine .price-labelund .price-valuedie nicht mehr von Nutzen sind.

Ich empfehle 100% mit einer benutzerdefinierten Dienstprogrammklasse namens

.text-right {
  text-align: right;
}

Ich mag es etwas zu zaubern, aber das liegt an dir, wie etwas:

span.pull-right {
  float: none;
  text-align: right;
}

1
Ja, jede Klasse ist absolut "gültig", aber nicht semantisch. Sie sollten Dienstprogrammklassen im Produktionscode sparsam verwenden, sie sind für "Bootstrapping" gedacht.
Jonschlinkert

3
Weil w3 sagt, dass dies die richtige Art ist, Klassen zu verwenden, heißt das nicht, dass es die beste ist. jQuery UI und Bootstrap würden nicht existieren, wenn es nicht 'nicht-semantische' Klassen gäbe. Menschen neigen dazu, semantische Bedeutung für Klassen zu verwenden, bis sie erkennen, dass es in allen Aspekten viel besser ist, sich für das Generische zu entscheiden. Es ist schwer, es zuerst zu bekommen oder zu denken, dass es wirklich gut ist, ich bin diesen Weg gegangen ...
Bart Calixto

1
Die jQuery-Benutzeroberfläche ist ein schlechtes Beispiel, da es sich um eine Javascript-Bibliothek handelt, die auch CSS enthält, und Bootstrap verwendet, wie bereits erwähnt, Dienstprogrammklassen als UTILITIES. Haben Sie jemals darüber nachgedacht , warum Bootstrap heißt Bootstrap ? Damit Sie diese Klassen für die Entwicklung verwenden und in Ihrem Produktionscode ändern können. Und ich habe nicht gesagt, sie überhaupt nicht zu benutzen, ich benutze ziemlich viel Pull-Left, Pull-Right. Und manchmal benutze ich auch Text-Center. Aber ich benutze sie sparsam und empfehle nicht als erste Vorgehensweise, dass andere sie über bessere, semantischere Optionen verwenden.
Jonschlinkert

1
Die jQuery-Benutzeroberfläche war nur ein Beispiel. Der Ansatz, über den ich spreche, ist, was Bibliotheken zum Funktionieren bringt. Wir können sehen, wie Kendo, Blueprint, Grid, 960, Chico UI und sogar Bootstrap dies tun. Nur so können diese Bibliotheken existieren / funktionieren. Sie können sich große Unternehmen ansehen, wie sie CSS wie Apple verwenden ( images.apple.com/v/imac/a/styles/imac.css ), und Sie werden beeindruckt sein. Das ist für die Produktivität und eine große Sache verantwortlich. Muss ehrlich sein, ich war erstaunt, dass ich KEIN Tutorial gefunden habe, das dies erklärt. Ich denke, der Begriff Bootstrap liegt daran, dass man anfangen muss, um sich später nicht zu ändern.
Bart Calixto

7

Hier ist eine kurze und süße Antwort mit einem Beispiel.

table{
    width: 100%;
}
table td, table th {
    border: 1px solid #000;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<body>
  <table>
    <tr>
      <th class="text-left">Text align left.</th>
      <th class="text-center">Text align center.</th>
      <th class="text-right">Text align right.</th>
    </tr>
    <tr>
      <td class="text-left">Text align left.</td>
      <td class="text-center">Text align center.</td>
      <td class="text-right">Text align right.</td>
    </tr>
  </table>
</body>


Sind die HTML - Tags linkund scriptgültig außerhalb der headoder bodyTags? Warum nicht ein vollständiges und gültiges HTML-Dokumentbeispiel bereitstellen?
Peter Mortensen


5

Mit der Veröffentlichung von Bootstrap 3 können Sie die Klassen text-centerfür die Ausrichtung in der Mitte, text-left für die Ausrichtung nach links , für die Ausrichtung text-rightnach rechts und text-justifyfür eine gerechtfertigte Ausrichtung verwenden.

Bootstrap ist ein sehr einfaches Frontend-Framework, mit dem Sie arbeiten können, sobald Sie es verwenden. Sie sind nicht nur sehr einfach an Ihre Bedürfnisse anzupassen.



3

Hier ist die einfachste Lösung

Sie können die Klassen wie Textmitte, links oder rechts zuweisen. Der Text wird entsprechend diesen Klassen ausgerichtet. Sie müssen keine Klassen separat erstellen. Diese Klassen sind in BootStrap 3 integriert

    <h1 class="text-center"> Heading 1 </h1> 
    <h1 class="text-left"> Heading 2 </h1> 
    <h1 class="text-right"> Heading 3 </h1>

Überprüfen Sie hier: Demo


1
<p class="text-sm-left">Left aligned text on viewports sized SM (small) or wider.</p>
Links ausgerichteter Text in Ansichtsfenstern mit der Größe MD (mittel) oder breiter.

Links ausgerichteter Text in Ansichtsfenstern mit der Größe LG (groß) oder breiter.

Links ausgerichteter Text in Ansichtsfenstern mit der Größe XL (extragroß) oder breiter.


1

In Bootstrap Version 4. Es gibt einige eingebaute Klassen zum Positionieren von Text.

Zum Zentrieren von Tabellenkopf und Datentext:

 <table>
    <tr>
      <th class="text-center">Text align center.</th>
    </tr>
    <tr>
      <td class="text-center">Text align center.</td>
    </tr>
  </table>

Sie können diese Klassen auch verwenden, um beliebigen Text zu positionieren.

<p class="text-left">Left aligned text on all viewport sizes.</p>
<p class="text-center">Center aligned text on all viewport sizes.</p>
<p class="text-right">Right aligned text on all viewport sizes.</p>

<p class="text-sm-left">Left aligned text on viewports sized SM (small) or wider.</p>
<p class="text-md-left">Left aligned text on viewports sized MD (medium) or wider.</p>
<p class="text-lg-left">Left aligned text on viewports sized LG (large) or wider.</p>
<p class="text-xl-left">Left aligned text on viewports sized XL (extra-large) or wider</p>

Für mehr Details

Hoffe es hilft dir.


0

In dieser drei Klassen Bootstrap ungültige Klasse

 .text-right {
     text-align: right; }

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

 .text-left {
    text-align: left; }

5
Es gibt bereits mehrere qualitativ hochwertige Antworten auf diese Frage, von denen die meisten vor drei Jahren veröffentlicht wurden, als die Frage gestellt wurde. Während es eine lohnende Übung sein kann, zu versuchen, einfache Fragen wie diese zu beantworten, um Ihre Programmierfähigkeiten zu verbessern, fügt das Posten dieser Antwort in ihrem aktuellen Zustand der Frage nichts hinzu. Wenn Ihre Antwort etwas Neues enthält, nehmen Sie bitte ein paar Sätze, um zu erklären, wie es anders ist und warum es dadurch besser wird.
MTCoster

Was meinst du mit "In dieser drei Klassen Bootstrap ungültige Klasse" ? Können Sie das näher erläutern? Insbesondere für "ungültige Klasse" .
Peter Mortensen

0

Verwenden Sie text-align:center !important. Es kann andere text-alignCSS-Regeln geben, daher !importantist dies wichtig.

table,
th,
td {
  color: black !important;
  border-collapse: collapse;
  background-color: yellow !important;
  border: 1px solid black;
  padding: 10px;
  text-align: center !important;
}
<table>
  <tr>
    <th>
      Center aligned text
    </th>
  </tr>
  <tr>
    <td>Center aligned text</td>
    <td>Center aligned text</td>
  </tr>
</table>

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.