• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Rahmenfarbe einer Tabelle

  • Ersteller Ersteller RedDrag
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
R

RedDrag

Guest
Hi, ich bins wieder:-).

Wie kann die border-color von einer Tabelle bestimmen?
Also, wenn ich es bei table hinschreibe klappt es ja, aber dann sind die ganzen trs etc. immernoch nicht anders.
 
Dann gib den tds halt auch noch border-color ;)

Wenn alle tds einen Rahmen haben, solltest du allerdings border-collapse nicht vergessen. Könnte sonst seltsam werden.
 
Code:
table, th, td {
    margin:0;
    border:solid 1px #00C;
    border-collapse:collapse;
}
Geht wunderbar.
 
Stimmt, und warum gehts es nicht, wenn ich es in einer Klasse mache?

Gleich noch eien Frage hinterher:

Ich will zwischen zwei trs einen Abstand haben, aber nur zwischen den beiden.
Wie geht das?

Ich hab es jetzt mit <tr><td></td></tr> zwischen den beiden gemacht, aber da zeigt Firefox dann leider zwei Linien zwischen den trs mit an.
 
Stimmt, und warum gehts es nicht, wenn ich es in einer Klasse mache?
Darf man Code sehen?

Wenn du einen Abstand zwischen zwei Zeilen haben möchtest, gibst du einfach der oberen etwas Abstand nach unten (margin-bottom).

EDIT: DAs mit dem Abstand scheint doch nicht zu funktionieren. Dann gib der Zeile unten einen entsprechend dicken Rahmen.
 
Wenn ich einen dickeren Rahmen nehme, sieht es ja fast so aus, als
würde ich einfach nur <tr><td></td></tr> nehmen. (wie oben beschrieben)

Hast du noch eine andere Idee?

p.s. Ich habe gerade gemerkt, dass es mit der Klasse doch funktioniert:smile:.


lg RD
 
Wenn alle tds einen Rahmen haben, solltest du allerdings border-collapse nicht vergessen. Könnte sonst seltsam werden.
Für die, die Tabellen noch ganz mit HTML gemacht haben, ist das nichts Neues. Da ist es default, dass die Borders nicht collapsen. Mit HTML-Mitteln hat man das nämlich nicht hinbekommen.

Ich will zwischen zwei trs einen Abstand haben, aber nur zwischen den beiden.
Ich hab es jetzt mit <tr><td></td></tr> zwischen den beiden gemacht, aber da zeigt Firefox dann leider zwei Linien zwischen den trs mit an.
Mit <td> zeichnet man Tabellenzellen aus. Damit kann man keine Abstände erzeugen. Mit HTML kann man keine Abstände erzeugen. HTML ist nur für die logische Auszeichnung des Inhalts.

Da drängt sich mir der Verdacht auf, dass Deine ganze Tabelle womöglich fälschlicherweise zum Layout missbraucht wird?
 
Doch mit<td></td>kann man beim IE Abstände erzeugen und mit <tr><td></td></tr> noch besser.
Kannst du selber ausprobieren:roll:.

Nein, die Tabelle soll nicht zum Layout gehören, sondern einfach nur eine normale Tabelle sein.
Wieso den fälschlicherweise missbraucht? Es ist doch eine gute Möglichkeit sie dazu zu verwenden.


lg RD
 
Zuletzt bearbeitet von einem Moderator:
Doch mit<td></td>kann man beim IE Abstände erzeugen
Wieso den fälschlicherweise missbraucht? Es ist doch eine gute Möglichkeit sie dazu zu verwenden.
HTML ist dazu gedacht, den Inhalt logisch auszuzeichnen. Das heißt, man beschreibt mit Hilfe der vorhandenen Tags, was der Inhalt bedeutet. Handelt es sich z.B. um eine Überschrift, um einen Textabsatz, um tabellarische Daten oder um eine Adresse oder eine wichtige Textpassage. HTML beschreibt also nur die Struktur Deines Dokuments.

Für alles, was mit Aussehen, Design oder Layout zu tun hat, benutzt man nur CSS. Dafür war HTML nie konzipiert. Man hat es früher (also letztes Jahrtausend) dafür benutzt, weil es da noch kein CSS gab. Das gibts aber auch schon seit 10 Jahren und hat sich schon lange bewährt. Und jetzt kann man endlich Inhalt von Layout trennen.

Das führt dann dazu, dass eine Website in 100% aller Browser problemlos nutzbar ist und auch von Clients, die nichts darstellen, einwandfrei zu interpretieren ist. Suchmaschinen finden eine Site mit einer ansprechenden Semantik besser, als irgendwelchen Kauderwelsch.

Abstände gehören zum Layout und sowas macht man eben nur in CSS.

Diese Arbeitsweise hat noch etliche andere Vorteile, wie schlankere Quelldateien, kürzere Ladezeiten, Austausch des Gesamtlayouts mit nur einer Datei usw usf.

<td> leitet nur eine Tabellenzelle ein. Sowas als Abstandshalter zu benutzen, funktioniert vielleicht in visuellen Clients, aber nicht-visuelle Clients wie z.B. Suchmaschinen, fragen sich, warum da jemand "Nichts" als Tabellenzelle ausgezeichnet hat.

Gruß,
-Efchen

P.S.: Der Klassiker: Warum Layout mit Tabellen dumm ist: Probleme definiert, Lösungen angeboten
 
Es ist zwar nicht dafür gedacht, aber dafür verwenden kann man es ja trotzdem. Außerdem werde ich mir sowieso nie die Mühe machen das Layout mit einer Tabelle zu gestalten.

BTT: Weiß noch jemand eine Möglichkeit?


mfg RD
 
Es ist zwar nicht dafür gedacht, aber dafür verwenden kann man es ja trotzdem.
Natürlich. Man kann auch Layout mit Tabellen machen. Man kann auch mehrere Framesets ineinander verschachteln. Man kann auch Bilder einbetten, die 3GB groß sind. Man kann auch auf nen DOCTYPE verzichten oder Tags nicht mehr schließen.

Aber warum sollte man es tun, wenn es eine sinnvolle Methode gibt, das selbe Ergebnis zu erzielen?

Du kannst Dir auch einen Rasenmähermotor in ein Auto einbauen lassen oder ein Auto mit einem Verbrauch von 40l/100km fahren. Aber warum sollte man das tun?

Außerdem werde ich mir sowieso nie die Mühe machen das Layout mit einer Tabelle zu gestalten.
Das ist ja schonmal ein Anfang :-) Aber wenn Du <td> benutzt, um Abstände zu erzeugen, machst Du ja eigentlich nichts anderes.

BTT: Weiß noch jemand eine Möglichkeit?
Abstände macht man in CSS mit margin bzw. padding.
Das Anwendungsbeispiel für einen Abstand zwischen zwei Tabellenzeilen will sich mir aber noch nicht wirklich erschließen.

Gruß,
-Efchen
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben