Supportnet Computer
Planet of Tech

Supportnet / Forum / Webseiten/HTML

border color mit css will nicht so richtig?





Frage

Hallo zusammen, Ich wollte mit css die Farbe für die Tabellenrahmen definieren. Das habe ich wie folgt gemacht: [code] .tabrandfarbe{ border-color:#8D9ECB; } //so rufe ichs in meiner html-Datei auf: <table width="746" border="1" cellpadding="0" cellspacing="0" class="tabrandfarbe"> [/code] Wieso wird aber nur der top und left border eingefärbt??? Wenn ich direkt in meinem Tabellenkopf ohne css folgendes schreibe, dann werden alle border eingefärbt (so wie ich es auch will). [code] <table width="746" border="1" cellpadding="0" cellspacing="0" style="border-color:#8D9ECB;"> [/code] Wie ich gelesen habe gibt es mit dem Netscape 4 eh probleme bei border-color. Gibt es eine andere Lösung bzw. wie kann ich es hinbekommen, dass die Farbe überall richtig zu sehen ist? Vielen Dank schon mal!

Antwort 1 von Susi23

Kein css Experte hier unterwegs? :-( Oder hab ichs zu eilig? Dann sorry!

Antwort 2 von Dr.Ma-Busen

Moin!

Ich habe das mal probiert, bei mir sieht alles normal aus.

Bei welchen Browsern ist das denn alles so? Nur bei Netscape 4?
Glaube nicht das noch viele leute den NC4 benutzen, da es mitlerweile schon NC7 gibt.
Und ich meine NC4 hatte/war/ist sowieso etwas fehlerhaft.

Ansonsten versuch es mal mit folgender schreibweise, so wie es hier bei p.info{...} steht. Musst dann aber den Rahmen für die einzelene Tabellenzellen auch angeben, bin mir jetzt aber nicht sicher.

Mfg
Dr. Ma-Busen

Antwort 3 von ClemBra

Habe den oben angegebenen Code bei mir (IE) probiert und funktioniert einwandfrei.

Probier es doch mal folgendermaßen:


//CSS-Deklaration für ALLE Tabellen

table {
	border-color:#8D9ECB;
}

//Aufruf in der HTML-Datei:
<table width="746" border="1" cellpadding="0" cellspacing="0">


Im übrigen: 8D9ECB ist keine Webfarbe.

Antwort 4 von Susi23

Hm, danke euch beiden erst mal. Wenn das so ist, kann es sein, dass es sich mit anderen css-Definitionen beißt??? Habe in dieser Tabelle noch mehr angegeben. Hier mal ein Ausschnitt:


  <table width="746" border="1" cellpadding="0" cellspacing="0" style="border-color:#8D9ECB; border-width:thin; border-style:solid;">
              <tr>
                <td width="71" valign="top" class="tabhintergrundlinks">Modul</td>
                <td width="145" valign="top" class="tabhintergrundlinks">Lehrgebiet </td>
                <td colspan="5" valign="top" class="tabhintergrundzentriert">Semesterwochenstunden (SWS)<br>Vorlesung/Übung/(Proseminar) </td>
                <td width="50" valign="top" class="tabhintergrundzentriert">LN </td>
                <td width="80" valign="top" class="tabhintergrundzentriert">Modul-<br>prüfung </td>
                <td width="56" valign="top" class="tabhintergrundzentriert">CP</td>
              </tr>
...
<tr>
                <td width="71" valign="top" class="normal">Modul 1</td>
                <td width="145" valign="top" class="normal">Analysis I und II</td>
                <td width="54" valign="top" class="normalzentriert">13</td>
                <td width="67" valign="top" class="normalzentriert">5/2</td>
                <td width="67" valign="top" class="normalzentriert">4/2</td>
                <td width="67" valign="top" class="normalzentriert"> </td>
                <td width="67" valign="top" class="normalzentriert"> </td>
                <td width="50" valign="top" class="normalzentriert">2 LN</td>
                <td width="80" valign="top" class="normalzentriert">M<br>(30-45 min)</td>
                <td width="56" valign="top" class="normalzentriert">19</td>
              </tr>
....
</table>

Wobei ich die Classen so definiert habe:

.tabhintergrundlinks{
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #000000;
	text-align:left;
	font-weight: bold;
	background-color: #C0C9E2;
}

/*Tabellenkopf mit Hintergrundfarbe, zentriert ausgerichtet*/
.tabhintergrundzentriert{
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #000000;
	text-align:center;
	font-weight: bold;
	background-color: #C0C9E2;
}
/*Standardschrift (normaler schwarzer Text)*/
.normal {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #000000;
}

/*Standardschrift mit zentrierter Ausrichtung*/
.normalzentriert {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #000000;
	text-align:center;
}

Liegt es an den zuvielen Klassen, die ich in die Tabelle integriere?

Antwort 5 von Susi23

Hab vergessen zu erwähnen, dass es so, wie ich es im Moment habe, in keinem Browser richtig dargestellt wird. Habe leider den Netscape 4 nicht drauf (sondern nur den 7.1) zum testen, aber bei SELFhtml stand dass, dass der das mit den border-color ignoriert. Aber auf den Netscape 4 kommt es mir gar nicht an, sondern, dass es wenigstens in den anderen (neueren funktioniert)

Antwort 6 von Susi23

Habe gerade mal eine völlig lehre Tabelle erstellt:

<table width="100%"  border="1" cellpadding="0" cellspacing="0" class="tabrandfarbe">
  <tr>
    <th width="16%"> </th>
    <th width="84%"> </th>
  </tr>
  <tr>
    <th scope="row"> </th>
    <td> </td>
  </tr>
  <tr>
    <th scope="row"> </th>
    <td> </td>
  </tr>
  <tr>
    <th scope="row"> </th>
    <td> </td>
  </tr>
</table>

Auch hier das gleiche Problem. Der Rand wird nur außen dargestllt (also an den äußersten 4 Seiten der Tabelle). Ich will doch aber, dass auch die "Striche" innerhalb der Tabelle diese Farbe haben. Ich kann doch nicht in jeder Spalte 2 Klassen einfügen :-(? Also sowas geht doch nicht:

<td width="71" valign="top" class="tabhintergrundlinks" class="tabrandfarbe">Modul</td>


Antwort 7 von rfb

zwei Klassen geht!
class="tabhintergrundlinks tabrandfarbe"

was sich allerdings beißt sind veraltete Angaben wie border cellspacing etc. als Attribute zu table mit Angaben im CSS, dafür gibts auch CSS-Angaben.

Antwort 8 von Susi23

Ach so geht das. Ich glaub ich lass dass mit dieser Rahmenfarbe. Da muss ich ja bei jedem <td> meine Klasse angeben. Wollte es nur einmal oben in der <table> Zeile definieren und dachte, er weiss dann, dass die ganze Tabelle die Rahmenfarbe haben soll, aber so schlau ist css/html ja dann doch noch nicht :-(.

Danke euch!

Antwort 9 von Friedel

Das mit der Rahmenfarbe sollte eingentlich bei allen Browsern ab Opa 6, Moz 1, IE 5 und NN 6 funktionieren. (@Dr.Ma-Busen: Vor vielen Jahren haben sich einige Firmen ein paar Abkürzungen schützen lassen. NN steht für den Netscape Navigator. Die Rechte an der Abkürzung wurden von Netscape als Warenzeichen angemeldet und Netscape wurde von AOL übernommen. NC wurde von Peter Norton angemeldet und gehört jetzt Symantec. Das ist der Norton Commander, eine sehr erfolgreiche Shell unter DOS.) Es funktioniert nicht bei Opa3 und Opa5. Insbesondere Opa3.6 wird auf manchen Rechnenrn noch benutzt weil er nicht installiert werden muss. Er funktioniert auf vielen Betriebsystemen und zwar ohne installation. Er läuft auch von Diskette oder CD. Auf Opa5 und NN4 braucht man normalerweise keine Rücksicht zu nehmen. NN4 ist mehr eine Bugsammlung als ein Browser. Er war so fehlerhaft, dass Netscape es nicht geschafft hat die Fehler in der folgeversion aus zu bügeln und aufgegeben hat. Die Fa gibt es seit dem nicht mehr. (NN6 und NN7 sind von AOL.Die haben die Namensrechte gekauft.) Du musst nur für einige Browser auch den border-style angeben.
.tabrandfarbe{
  border-color:#8D9ECB; border-style: solid;
}

Das sollte zum gewünschten Ergebnis führen.

Antwort 10 von Susi23

Nein, ich wollte eigendlich nur in der Zeile <table> oder jeweils in <tr> Attributen definieren, dass überalle diese Farbe dargestellt wird und nicht nur am äußersten Rand der Tabelle (also oben, unten, rechts, links). Außerdem hat der Rahmen sone Art Schatten oder sieht so 3D mäßig aus, dass will ich gar nicht, aber ich finde auch nicht raus, wie ich diesen Schatten wegbekomme? Ich muss es wohl doch bei jedem <td> Attribut einfügen, schade :-(. Und wie bekomme ich diesen komischen Schatten weg?

Wenn ein Browser meine css-Definitionen nicht interpretieren kann, sieht man das dann als Standard, also weisser Rand oder spinnt sich ein Browser dann was eigenes aus?

Danke!

Antwort 11 von MoRe99

Eine der besten Adressen, wenn es um CSS geht, ist css4you. Vielleicht findest du dort, was du suchst.

Antwort 12 von Schimmi

Hallo Susi23,
ist es das, was Du meinst?

MfG,
Schimmi
www.alschim.de


<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Border_test</title>
<meta name="author" content="Schimmi">
<meta name="generator" content="Ulli Meybohms HTML EDITOR">
</head>
<body>
<style type="text/css">
<!--
.blau {
background-color: lightblue;
}
.gelb {
background-color: yellow;
}
table {
border: 1px solid black;
border-spacing: 0;
}
td {
border: 1px solid black;
padding: 4px 6px;
}
-->
</style>
<table >
<tr class="blau">
<td>Zelle 1 </td>
<td>Zelle 1 </td>
</tr>
<tr class="gelb">
<td>Zelle 2 </td>
<td>Zelle 3 </td>
</tr>
</table>
</body>
</html>

Antwort 13 von Susi23

@Schimmi:
Nein, das meinte ich nicht. Nicht die Farbe der Zelle will ich ändern, sondern die Farbe der Ränder (Rahmen) um jede (!) Zelle.

@MoRe99:
Ok, die Seite werde ich mal studieren :-).

Antwort 14 von Schimmi

Du brauchst doch nur solid black gegen eine andere Farbe zu tauschen.


table {
border: 1px solid green;
border-spacing: 0;
}
td {
border: 1px solid red;
padding: 4px 6px;
}


Somit hast Du alles im Griff.

MfG,
Schimmi
www.alschim.de

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: