Schöne Rahmen für HTML-Tabelle. Ändern Sie den Linienhintergrund beim Schweben
- 4,7 von 5 basierend auf 6 Stimmen
Beim Erstellen von Webseiten ist es sehr häufig erforderlich, Seiteninhalte in Form von Tabellen darzustellen.
Manchmal werden Tabellen verwendet, um eine Seitenstruktur zu erstellen. Dieser Ansatz ist nicht ganz korrekt, da Tabellen ursprünglich nicht zum Positionieren von Seitenelementen entworfen wurden.
Verwenden Sie zu diesem Zweck am besten CSS. In einigen Fällen sind Tabellen jedoch unersetzlich und praktisch für die Bereitstellung von Informationen.
Das Tag ist für die Erstellung von Tabellen in HTML verantwortlich.
Um zu sehen, wie alles in der Praxis funktioniert, erstellen wir eine Tabelle, die aus zwei Zeilen und vier Zellen besteht. Unser Tabellencode lautet wie folgt:
1 - Zelle | 2 - Zelle |
3 - Zelle | 4 - Zelle |
Um zu sehen, was daraus wird, erstellen Sie eine HTML-Seite mit dem folgenden Code. Wenn Sie nicht wissen, wie Sie eine HTML-Seite erstellen, lesen Sie das Tutorial.
1 - Zelle | 2 - Zelle |
3 - Zelle | 4 - Zelle |
Sie sollten so etwas haben:
Wie Sie sehen können, sieht unser Tisch überhaupt nicht wie ein Tisch aus. Das liegt alles an unseren Tags
Zunächst werden wir uns die Attribute ansehen, die Tags inhärent sind
bordercolor - Die Farbe des Tabellenrahmens. Dieses Attribut wird nicht von allen Browsern unterstützt, sodass möglicherweise die angegebene Rahmenfarbe nicht angezeigt wird:
Wir setzen die Rahmenbreite auf 2 Pixel, blau, die Tabelle sieht folgendermaßen aus:
width - Legt die Breite der Tabelle in Pixel oder Prozent fest:
höhe - Die Höhe der Tabelle in Pixel oder Prozent:
Die Tabelle wird 250 Pixel breit und 150 Pixel hoch sein. Die Tabelle sieht folgendermaßen aus:
ausrichten - Tabellenausrichtung;
align \u003d left - Tabellen werden nach links ausgerichtet.
align \u003d right - Die Tabelle wird rechtsbündig ausgerichtet:
Unser Tisch sollte rechtsbündig sein.
bgcolor - Hintergrundfarbe der Tabelle, bgcolor \u003d # FFC000 - Hintergrundfarbe der Tabelle ist gelb:
Die Tabelle sieht folgendermaßen aus:
hintergrund - Mit diesem Attribut können Sie ein Bild festlegen, das als Hintergrund für die Tabelle dient.
Speichern Sie beispielsweise das kleine Bild, das Sie in Klammern () sehen, in dem Ordner, in dem sich die Seite mit der Tabelle befindet, und im Tag
Einige von ihnen sind mit Tag-Attributen identisch
Beachten Sie, dass es ausreicht, eine Zellenhöhe oder -breite festzulegen, und alle Zellen in dieser Zeile oder Spalte dieselbe Größe haben. Wenn Sie beispielsweise eine bestimmte Zellenhöhe festlegen müssen, reicht es aus, diesen Parameter für eine Zelle anzugeben, und alle anderen Zellen in der Zeile werden gleich. align - richtet den Inhalt von Zellen aus und hat folgende Werte: align \u003d "lef" - Der Inhalt der Zelle wird nach links ausgerichtet. align \u003d "right" - Der Inhalt wird rechtsbündig ausgerichtet. align \u003d "center" - Der Inhalt wird an der Mitte der Zelle ausgerichtet. Fügen Sie diese Attribute und Werte zu unserem Code hinzu und richten Sie den Inhalt der 1. Zelle links aus (der Inhalt ist standardmäßig linksbündig, in einigen Fällen ist dieses Attribut jedoch erforderlich), der Inhalt der 2. Zelle ist rechtsbündig und der 4 .. Im Zentrum.
bgcolor - Mit diesem Attribut können Sie die Farbe der Zelle festlegen. hintergrund - Legt das Bild als Hintergrund der Zelle fest. Wir haben diese Attribute bereits unter Berücksichtigung der Attribute des Tags kennengelernt
Diese Option ist einfacher als die erste, wird jedoch von Internet Explorer und Netscape leider nicht auf die gleiche Weise interpretiert. Kasten 3
Wenn die beiden vorherigen Optionen Frames in unterschiedlichen Browsern anzeigen, wenn auch nur minimal, aber unterschiedlich dick, wird das dritte Beispiel von den gängigen Browsern Internet Explorer 4.x / 5.x / 6, Netscape 4.x / 6.x und Opera 6 interpretiert. x ist hinsichtlich der Randdicke gleich. Ich finde es angebracht zu erwähnen, dass Netscape 4.x für einen Webdesigner am problematischsten ist.
Alle Zellen außer der fünften sind schwarz übermalt, die fünfte weiß. Der Hintergrund der Tabelle selbst ist in diesem Fall nicht wichtig. Dann wird der Parameter zu den Zellen 1-3 und 7-9 hinzugefügt höhe \u003d "1". Dementsprechend werden die Zellen 1, 3, 4, 6, 7, 9 um ein Pixel breit gemacht ( width \u003d "1"). Die mittleren Zellen 2, 5, 8 sind so breit wie möglich ( width \u003d "100%"). Der Trick besteht darin, dass den Zellen das sogenannte "modifizierte Malewitsch-Quadrat" hinzugefügt wird, das schmal oder dünn oder beides sein sollte - eine transparente GIF-Datei mit einer Größe von 1 x 1, da sonst der gewünschte Effekt nicht erzielt wird. Diese Option ist zweifellos zu komplex und umständlich, um einen dünnen Rand um eine Tabelle mit einer Zelle zu erstellen, obwohl sie mit vielen Browsern kompatibel ist. Es wird hauptsächlich für das Seitenlayout mit dünnen Linien verwendet. Sie können auch Stylesheets verwenden, um Rahmen zu erstellen, aber mehr dazu in einem der folgenden Workshops.
Die CSS-Spezifikation bietet unbegrenzte Möglichkeiten für die Tabellengestaltung. Standardmäßig haben die Tabelle und die Tabellenzellen keine sichtbaren Ränder und Hintergründe, und die Zellen in der Tabelle liegen nicht nebeneinander. Die Breite von Tabellenzellen wird durch die Breite ihres Inhalts bestimmt, sodass die Breite der Tabellenspalten unterschiedlich sein kann. Die Höhe aller Zellen in einer Reihe ist gleich und wird durch die Höhe der höchsten Zelle bestimmt. Formatieren von Tabellen1. Tabellenrand GrenzeDie Tabelle und die darin enthaltenen Zellen werden standardmäßig im Browser ohne sichtbare Rahmen angezeigt. Tabellenränder durch die Eigenschaft border festgelegt: Tabelle (Rand-Zusammenbruch: Zusammenbruch; / * Leerzeichen zwischen Zellen entfernen * / Rand: 1px durchgehend grau; / * einen äußeren Rand von 1px grau für die Tabelle festlegen * /) Kopfzellenränder Jede Spalte wird für das th-Element festgelegt: Th (Rand: 1px durchgehend grau;) Zellgrenzen Tabellenkörper werden für das td-Element festgelegt: Td (Rand: 1px durchgehend grau;) Die Breite der Ränder benachbarter Zellen wird nicht verdoppelt, sodass Sie die Ränder für die gesamte Tabelle folgendermaßen festlegen können: Th, td (Rand: 1px durchgehend grau;) Der äußere Rand der Tabelle kann durch Erhöhen der Breite ausgewählt werden: Tabelle (Rand: 3px durchgehend grau;) Grenzen können teilweise gesetzt werden: / * einen 3px grauen Außenrand für die Tabelle festlegen * / table (Rand oben: 3px durchgehend grau;) / * einen 1px grauen Rand für die Tabellenkörperzelle festlegen * / td (Rand unten: 1px durchgehend grau;) Sie können mehr über die Eigenschaft border lesen. 2. So stellen Sie die Breite und Höhe der Tabelle einDefault tischbreite und -höhe wird durch den Inhalt seiner Zellen bestimmt. Wenn keine Breite angegeben ist, entspricht diese der Breite der breitesten Zeile (Zeile). Tabellen- und Spaltenbreite Mit der Eigenschaft width festlegen. Wenn für eine Tabelle eine Tabelle (width: 100%;) angegeben ist, entspricht die Breite der Tabelle der Breite des Containerblocks, in dem sie sich befindet. Die Breite der Tabelle und der Spalten wird normalerweise in px oder% angegeben, zum Beispiel: Tabelle (Breite: 600px;) th (Breite: 20%;) td: erstes Kind (Breite: 30%;) Tischhöhe nicht festgelegt. Die Höhe der Reihen Tabellen können durch Hinzufügen von oberen und unteren Auffüllungen zu Elementen bearbeitet werden und | ... Das Festlegen der Höhe mithilfe der Eigenschaft height wird nicht empfohlen. | Th, td (Polsterung: 10px 15px;) 3. So legen Sie den Hintergrund der Tabelle festDefault tabellenhintergrund und die Zellen sind transparent. Wenn die Seite oder der Block mit der Tabelle einen Hintergrund hat, leuchtet sie durch die Tabelle. Wenn der Hintergrund sowohl für die Tabelle als auch für die Zellen festgelegt ist, ist nur der Hintergrund der Zellen an den Stellen sichtbar, an denen sich der Hintergrund der Tabelle und der Zellen überlappen. Der Hintergrund für die gesamte Tabelle und ihre Zellen kann sein: 4. TabellenspaltenDas CSS-Tabellenmodell konzentriert sich hauptsächlich auf Zeichenfolgen (Zeilen), die mithilfe eines Tags gebildet werden mit dem Tag Sie können den Hintergrund für eine beliebige Anzahl von Spalten festlegen. mit der Tabelle td: first-child, table td: last-child-Selektor können Sie die erste oder letzte Spalte der Tabelle formatieren (mit Ausnahme der ersten Zelle des Tabellenkopfs). mit der Tabellenauswahl td: nth-child (Spaltenauswahlregel) können Sie beliebige Spalten in der Tabelle formatieren. Weitere Informationen zu CSS-Selektoren finden Sie hier. 5. So fügen Sie einen Tabellentitel hinzuMit dem Tag können Sie der Tabelle einen Titel hinzufügen
6. So entfernen Sie die Lücke zwischen ZellenrahmenStandardmäßig sind die Ränder von Tabellenzellen durch ein kleines Leerzeichen getrennt. Wenn wir Border-Collapse: Collapse für die Tabelle festlegen, wird die Lücke entfernt. Die Eigenschaft wird vererbt. Syntax Tabelle (Border-Collapse: Collapse;) 7. So vergrößern Sie den Abstand zwischen den ZellrändernMit der Eigenschaft "Randabstand" können Sie den Abstand zwischen Zellenrändern ändern. Diese Eigenschaft gilt für die gesamte Tabelle. Vererbt. Syntax Tabelle (Randkollaps: getrennt; Randabstand: 10px 20px;) Tabelle (Randkollaps: getrennt; Randabstand: 10px;) 8. So verbergen Sie leere TabellenzellenDie Eigenschaft "Leere Zellen" blendet leere Zellen aus oder zeigt sie an. Betrifft nur Zellen, die keinen Inhalt enthalten. Wenn für eine Zelle ein Hintergrund angegeben ist und für eine Tabelle eine Tabelle (border-Collapse: Collapse;) angegeben ist, wird die Zelle nicht ausgeblendet. Vererbt.
9. Layout des Tabellenlayouts mithilfe der Eigenschaft "Tabellenlayout"Das Layout eines Tabellenlayouts wird durch einen von zwei Ansätzen bestimmt: festes Layout oder automatisches Layout. Layout bedeutet in diesem Fall, wie die Breite der Tabelle auf die Breite der Zellen verteilt wird. Die Eigenschaft wird nicht vererbt. Syntax Tabelle (Tabellenlayout: fest;) 10. Beste Tabellenlayouts1. Horizontaler MinimalismusHorizontale Tabellen sind Tabellen, in denen Text horizontal gelesen wird. Jede Entität ist eine separate Zeile. Sie können Tabellen wie diese in einem minimalistischen Stil formatieren, indem Sie einen Zwei-Pixel-Rand unter die Überschrift th setzen.
Aufgrund der großen Anzahl von Zeilen sind Tabellen aufgrund dieser Gestaltung schwer lesbar. Um dieses Problem zu lösen, können Sie unter allen td-Elementen einen Ein-Pixel-Rand hinzufügen. Td (Rand unten: 1px durchgehend #ccc; Farbe: # 669; Polsterung: 9px 8px; Übergang: .3s linear;) / * Rest des Codes - wie im obigen Beispiel * / Durch Hinzufügen eines: hover-Effekts zum tr-Element werden Tabellen mit minimalistischem Stil leichter lesbar. Wenn Sie den Mauszeiger über eine Zelle bewegen, werden die restlichen Zellen derselben Zeile gleichzeitig hervorgehoben. Dies erleichtert das Verfolgen von Informationen, wenn Tabellen mehrere Spalten enthalten. Th (Schriftgröße: normal; Farbe: # 039; Polsterung: 10px 15px;) td (Farbe: # 669; Rand oben: 1px durchgehend # e8edff; Polsterung: 10px 15px;) tr: Hover td (Hintergrund: # e8edff ;) 2. Vertikaler MinimalismusObwohl solche Tabellen selten verwendet werden, sind vertikal ausgerichtete Tabellen nützlich, um Beschreibungen von Objekten, die durch eine Spalte dargestellt werden, zu kategorisieren oder zu vergleichen. Sie können sie in einem minimalistischen Stil formatieren, indem Sie ein Leerzeichen zwischen den Spalten hinzufügen. Th (Schriftgröße: normal; Rand unten: 2px durchgehend # 6678b1; Rand rechts: 30px durchgehend #fff; Rand links: 30px durchgehend #fff; Farbe: # 039; Polsterung: 8px 2px;) td (Rand- rechts: 30px durchgehend #fff; Rand links: 30px durchgehend #fff; Farbe: # 669; Polsterung: 12px 2px;) 3. "Box" -StilDer zuverlässigste Stil zum Dekorieren von Tischen aller Art ist der sogenannte "Box" -Stil. Es reicht aus, ein gutes Farbschema auszuwählen und dann die Hintergrundfarbe für alle Zellen festzulegen. Denken Sie daran, den Unterschied zwischen Linien hervorzuheben, indem Sie Rahmen als Trennzeichen festlegen. Th (Schriftgröße: 13px; Schriftgröße: normal; Hintergrund: # b9c9fe; Rand oben: 4px fest #aabcfe; Rand unten: 1px fest #fff; Farbe: # 039; Polsterung: 8px;) td (Hintergrund : # e8edff; Rand unten: 1px durchgehend #fff; Farbe: # 669; Rand oben: 1px durchgehend transparent; Polsterung: 8px;) tr: hover td (Hintergrund: #ccddff;) Am schwierigsten ist es, das Farbschema zu finden, das sich harmonisch in Ihre Website einfügt. Wenn die Site mit Grafiken und Design geladen ist, ist es für Sie ziemlich schwierig, diesen Stil zu verwenden. Tabelle (Schriftfamilie: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif; Schriftgröße: 14 Pixel; maximale Breite: 70%; Breite: 70%; Textausrichtung: Mitte; Randkollaps: Zusammenbruch ; Rand oben: 7px fest # 9baff1; Rand unten: 7px fest # 9baff1;) th (Schriftgröße: 13px; Schriftgröße: normal; Hintergrund: # e8edff; Rand rechts: 1px fest # 9baff1; Rand- links: 1px fest # 9baff1; Farbe: # 039; Polsterung: 8px;) td (Hintergrund: # e8edff; Rand rechts: 1px fest #aabcfe; Rand links: 1px fest #aabcfe; Farbe: # 669; Polsterung: 8px ;) 4. Horizontales ZebraZebra Tisch sieht ziemlich attraktiv und handlich aus. Die ergänzende Hintergrundfarbe kann als visueller Hinweis für das Lesen der Tabelle dienen. Th (Schriftgröße: normal; Farbe: # 039; Polsterung: 10px 15px;) td (Farbe: # 669; Rand oben: 1px durchgehend # e8edff; Polsterung: 10px 15px;) tr: n-tes Kind (2n) ( Hintergrund: # e8edff;) 5. ZeitungsstilUm den sogenannten Zeitungseffekt zu erzielen, können Sie Tabellenelemente mit Rändern versehen und mit den Zellen darin spielen. Ein leichter, minimaler Zeitungsstil könnte folgendermaßen aussehen: Spielen Sie mit dem Farbschema, fügen Sie Ränder, Polster, verschiedene Hintergründe hinzu und bewegen Sie den Schwebeflug über eine Linie. Tabelle (Rand: 1px durchgehend # 69c;) th (Schriftgröße: normal; Farbe: # 039; Rand unten: 1px gestrichelt # 69c; Polsterung: 12px 17px;) td (Farbe: # 669; Polsterung: 7px 17px; ) tr: hover td (Hintergrund: #ccddff;) Tabelle (Rand: 1px durchgehend # 69c;) th (Schriftgröße: normal; Farbe: # 039; Polsterung: 10px;) td (Farbe: # 669; Rand oben: 1px gestrichelt #fff; Polsterung: 10px; Hintergrund: #ccddff;) tr: hover td (Hintergrund: # 99bcff;) Tabelle (Rand: 1px durchgehend # 6cf;) th (Schriftgröße: normal; Schriftgröße: 13px; Farbe: # 039; Texttransformation: Großbuchstaben; Rand rechts: 1px durchgehend # 0865c2; Rand oben: 1px durchgehend; # 0865c2; Rand links: 1px durchgehend # 0865c2; Rand unten: 1px durchgehend #fff; Polsterung: 20px;) td (Farbe: # 669; Rand rechts: 1px gestrichelt # 6cf; Polsterung: 10px 20px;) 6. TabellenhintergrundWenn Sie nach einer schnellen und einzigartigen Möglichkeit suchen, Ihren Tisch zu gestalten, wählen Sie ein attraktives Bild oder Foto aus, das sich auf das Thema des Tisches bezieht, und legen Sie es als Hintergrund für den Tisch fest. Png ") 98% 86% keine Wiederholung;) th (Schriftgröße: normal; Schriftgröße: 14px; Farbe: # 339; Polsterung: 10px 12px; Hintergrund: weiß;) td (Farbe: # 669; Rand- oben: 1px durchgehend weiß; Polsterung: 10px 12px; Hintergrund: rgba (51, 51, 153, .2); Übergang: .3s;) tr: Hover td (Hintergrund: rgba (51, 51, 153, .1); ) Um den Inhalt einer Zelle klar von einer anderen zu trennen, werden den Zellen Ränder hinzugefügt. Der Rahmenparameter des Tags ist für deren Erstellung verantwortlich.
Auf diese Weise erstellte Frames unterscheiden sich geringfügig in ihrem Erscheinungsbild in verschiedenen Browsern. Zahl: 1. Der mit dem Rahmenparameter erhaltene Rahmen Um einen Rahmen des gleichen Typs zu erhalten, wird empfohlen, das Rahmenstil-Tag auf die Tabellenzellen anzuwenden (die oder | ). Aber auch hier gibt es Fallstricke. Da für jede Zelle ein Rahmen erstellt wird, wird an den Kontaktpunkten der Zellen ein Rand mit doppelter Dicke erhalten. Es gibt verschiedene Möglichkeiten, um diese Funktion zu lösen. Am einfachsten ist es, die zum Reduzieren festgelegte Eigenschaft "Rahmen reduzieren" zu verwenden. Seine Aufgabe ist es, den Kontakt von Linien zu verfolgen und anstelle einer doppelten Grenze eine einzelne darzustellen. Wir fügen dieses Attribut des Datatkov zum Tag hinzu |
Der Unterschied zwischen den Tabellenrändern beim Hinzufügen des Randkollaps-Parameters sowie ohne diesen ist in Abb. 1 dargestellt. 2. ein b Zahl: 2. Tabellenansicht bei Verwendung des Border-Collapase-Attributs In Abb. 2a zeigt den Standardtabellenrahmen. Beachten Sie, dass in der Tabelle alle Zeilen doppelt so breit sind. Durch Hinzufügen des Randkollaps-Parameters wird dieses Merkmal entfernt und die Dicke aller Linien wird gleich (Abb. 2b). Um Linien des gleichen Typs in der Tabelle zu entwickeln, können Sie den anderen Weg gehen. Sollte für den Selektor hinzugefügt werden Rahmen, aber brechen Sie die rechte und untere Zeile ab, indem Sie die entsprechenden Attribute auf none setzen. Wenn die Zellen dann verbunden werden, überlappen sich ihre Ränder nicht miteinander, da nur eine Zeile vorhanden ist. Bei dieser Methode zum Bilden von Rahmen befinden sich jedoch keine Linien unterhalb und rechts von der Tabelle. Hinzufügen von Border-Right- und Border-Bottom-Parametern zum Selektor |
Diese Methode kann beispielsweise für den Selektor Variationen aufweisen Wir fügen einen Rand nur rechts und unten und bei hinzu |
|