Ich bin mit einem CSS-Problem bei der Verwendung von Bootstrap festgefahren. Ich verwende auch Angular JS mit Angular UI.bootstrap (was möglicherweise Teil des Problems ist).
Ich erstelle eine Website, auf der Daten in einer Tabelle angezeigt werden. Manchmal enthalten die Daten Objekte, die ich in Tabellen anzeigen muss. Daher möchte ich randlose Tabellen in eine normale Tabelle einfügen und gleichzeitig die Trennlinien für die randlosen Tabellen beibehalten.
Aber es scheint, dass selbst wenn ich ausdrücklich sage, dass die Ränder auf einem Tisch nicht angezeigt werden sollen, dies erzwungen wird:
HTML:
<table class='table borderless'>
CSS:
.borderless table {
border-top-style: none;
border-left-style: none;
border-right-style: none;
border-bottom-style: none;
}
Was ich hier also will, sind nur die inneren Grenzen.
html
css
twitter-bootstrap
Romain
quelle
quelle
Antworten:
Das Rahmen-Styling wird für die
td
Elemente festgelegt.html:
CSS:
Update: Seit Bootstrap 4.1 können Sie
.table-borderless
den Rand entfernen.https://getbootstrap.com/docs/4.1/content/tables/#borderless-table
quelle
.borderless th
, da das Bootstrap-Styling auch für gilt<th>
.style=
oder fügen ihn in eine benutzerdefinierte Datei ein und stellen sicher, dass er später als die Bootstrap-CSS-Datei geladen wird, um den Bootstrap-Standardstil zu überschreiben. CSS werden mit Bestellung geladen; Letzteres überschreibt Ersteres, je spezifischer überschreibt, desto allgemeiner.<table class='table table-borderless'>
pro Max untenBei Verwendung von Bootstrap 3.2.0 hatte ich ein Problem mit der Brett Henderson-Lösung (Grenzen waren immer vorhanden), daher habe ich sie verbessert:
HTML
CSS
quelle
th
-Element im Körper:.borderless tbody tr th
(wie in den Beispielen verwendet ).table-
, wie dies bei Bootstrap 3 für andere tabellenbezogene Klassen (z. B.table-striped
usw.) der Fall ist . So wird der Name seintable-borderless
..table-borderless,
am Anfang dieser Stilspezifikation hinzufügte .table-borderless
in diesem Dokument nicht getbootstrap.com/docs/3.3/css/#tables . Woher kam es?ähnlich wie die anderen, aber spezifischer:
quelle
Fügen Sie die
.table
Klasse nicht zu Ihrem<table>
Tag hinzu. Aus den Bootstrap-Dokumenten zu Tabellen :quelle
Seit Bootstrap v4.1 können Sie
table-borderless
Ihrer Tabelle hinzufügen , siehe offizielle Dokumentation :quelle
In meinem CSS:
In meiner Richtlinie:
Ich habe das 'randlose' für das td-Element nicht gesetzt.
Getestet und es hat funktioniert! Alle Ränder und Polster sind komplett abgestreift.
quelle
Ich habe die Bootstrap-Tabellenstile wie Davide Pastore erweitert, aber mit dieser Methode werden die Stile auch auf alle untergeordneten Tabellen angewendet und gelten nicht für die Fußzeile.
Eine bessere Lösung wäre die Nachahmung der wichtigsten Bootstrap-Tabellenstile, jedoch mit Ihrer neuen Klasse:
Wenn Sie dann
<table class='table table-borderless'>
nur die bestimmte Tabelle mit der Klasse verwenden, wird diese umrandet, keine Tabelle im Baum.quelle
Versuche dies:
CSS
Hinweis: Was Sie zuvor getan haben, hat nicht funktioniert, weil Ihr CSS-Code auf eine Tabelle in Ihrer .borderless-Tabelle abzielte (die wahrscheinlich nicht vorhanden war).
quelle
Ich weiß, dass dies ein alter Thread ist und dass Sie eine Antwort ausgewählt haben, aber ich dachte, ich würde dies posten, da es für alle anderen relevant ist, die gerade suchen.
Es gibt keinen Grund, neue CSS-Regeln zu erstellen. Machen Sie einfach die aktuellen Regeln rückgängig und die Rahmen verschwinden.
in Zukunft alles gestylt mit
zeigt keine Grenzen.
quelle
Verwenden Sie die
border-
Klasse aus Boostrap 4oder
Stellen Sie sicher, dass Sie die Klasseneingabe mit der letzten Änderung beenden, die Sie vornehmen möchten.
quelle
Dieser hat für mich gearbeitet.
Der Schlüssel ist, dass Sie dem Rand einen Rand hinzufügen müssen
<td>
quelle
Ich bin hier zu spät zum Spiel, aber FWIW: Wenn Sie
.table-bordered
zu einem hinzufügen , wird.table
die Tabelle nur mit einem Rand umschlossen , obwohl jeder Zelle ein vollständiger Rand hinzugefügt wird.Beim Entfernen
.table-bordered
bleiben jedoch die Regelzeilen erhalten. Es ist ein semantisches Problem, aber in Übereinstimmung mit der BS3 + -Nomenklatur habe ich diese Reihe von Überschreibungen verwendet:quelle
Verwenden Sie
hidden
anstelle vonnone
:quelle
Die meisten Beispiele scheinen zu spezifisch und / oder aufgebläht zu sein.
Hier war meine abgespeckte Lösung mit Bootstrap 4.0.0 (4.1 enthält,
.table-borderless
aber immer noch Alpha) ...Ähnlich wie bei vielen vorgeschlagenen Lösungen, jedoch mit minimalen Bytes 😉
Hinweis: Ich bin hier gelandet, weil ich BS4.1-Referenzen angezeigt habe und nicht herausfinden konnte, warum
.table-borderless
ich nicht mit meinen 4.0-Quellen gearbeitet habe (z. B. Operatorfehler, duh) 💩quelle
In einigen Fällen muss in der Tabellenklasse auch der Randabstand verwendet werden, z.
quelle
Installieren Sie den Bootstrap entweder mit npm oder cdn link
Holen Sie sich die Referenz mit diesem Link
quelle