Farben in HTML

von Thomas Salvador.

  1. Tags, Attribute, Plattformunabhängigkeit
  2. Grundstruktur von HTML-Dateien
  3. Text in HTML
  4. Grundlegende Gestaltungselemente in HTML
  5. Blockorientierte Elemente in HTML
  6. Listen und Glossare in HTML
  7. Verweise und Protokolle in HTML
  8. Grafik in HTML
  9. Farben in HTML
springe zu Kapitel: [ Titel | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | F ]

Farben können auf zwei Arten ausgewählt werden, durch Angabe ihrer Rot-, Grün- und Blauanteile (RGB) oder durch einen Namen, der allerdings nur für (vergleichsweise wenige) besonders oft benutzte Farben zur Verfügung steht (und auch nur für diese zur Verfügung gestellt werden kann).

RGB-Tripel

Im ersten Falle sind die Anführungsstriche immer zu setzen, was durch das Gatter (#) bedingt ist.Im zweiten Fall kann auf diese verzichtet werden, wenn der Name nur aus genau einem Wort besteht.

Der Autor empfiehlt, stets Anführungsstriche zu setzen.

COLOR="#rrggbb"

Dabei ist rr der Rotanteil, gg der Grünanteil und bb der Blauanteil der Farbe jeweils hexadezimal von 00 bis ff, d.h. dezimal von 0 bis 255 und visuell von keine Intensität bis maximale Intensität.

color-bar-1

Es wird also der RGB-Farbraum verwendet. Durch die 256 Werte pro Farbkanal bei drei Kanälen können so 16,7 Mio. Farben, d.h. Truecolor, festgelegt werden.

Beachten Sie bitte, dass die eingestellten Farben jeweils für die aktuelle Datei gelten.

Besteht Ihr Dokument aus mehreren Einzelteilen, was i.a. sinnvoll ist, so müssen Sie die Farben in jeder Datei vermerken, wenn Sie ein gleichbleibendes Erscheinungsbild anstreben.

Beachten Sie bitte auch, dass nicht alle Grafikkarten Echtfarben darstellen können. Inzwischen werden Rechner praktisch immer mit solchen Karten verkauft, jedoch muss man zum einen nicht dauernd seine Geräte austauschen, die stärksten Maschinen zum Surfen verwenden oder TrueColor einstellen. Eine niedrigere Einstellung genügt im Alltag schließlich auch.

Ist die Farbe nicht direkt darstellbar, (im schlimmsten Falle heutzutage wohl VGA oder SVGA) werden diese Farben entweder in dem nächst anzeigbaren Farbton) gezeigt, wobei zu eng beieinander liegende Farben gleich erscheinen können, oder diese Farben werden ausgedithert.

Beim Dithern wird ein Farbton durch Kombination vorhandener Farben erzeugt.

Die Kombination besteht darin, dass ein Pixelmuster erzeugt wird, welches (von weitem betrachtet) dem Farbton ähnelt.

Bei naher Betrachtung sieht man freilich die Pixel, was zum Beispiel bei Grafiken nicht allzu schlimm ist. (Vielmehr ist es sogar günstig. Man stelle sich ein Echtfarbenbild (gute Chancen hat man bei jpg, tga und sonstigen 24-Bit Bildformaten), vor, welches ohne Dithern auf 256 Farben heruntergerechnet wird. Unbrauchbar!).

Bei Text kann dieses Raster, dieses Pixelmuster aber schnell zur Unleserlichkeit führen.

Möchten Sie sicherstellen, dass ihr Dokument auf nahezu allen (Farbe generell darstellfähigen) Geräten angezeigt werden kann, so beschränken Sie sich auf die 16 Grundfarben, die im nächsten Absatz benannt werden.

Man kann (sollte?) aber so langsam aber sicher davon ausgehen dürfen, dass nahezu jeder Echtfarben oder zumindest HighColor (=32768-65536 Farben) sehen kann.

Der Autor ist nun wirklich für die Berücksichtigung älterer Hardware, jedoch sollten diese Urzeitsysteme so selten vorkommen (genauer: nicht zum Surfen verwendet werden), dass man Sie weitestgehend ignorieren kann.

Die Empfehlung ist: Beschränken Sie sich auf das wirklich Notwendige!

Verwenden Sie keine Million Farben, wenn auch 10 reichen, aber: wenn z.B. ein Bild wichtig ist, verwenden Sie es auch in angemessener Qualität.

Betrachten wir nun ein Beispiel zum Dither. Als Ausgangsbild verwenden wir ein recht einfaches Bild, welches jedoch eine hohe Anzahl von Farben benötigt:

Truecolor

Das verwendete Format ist JPEG, Qualitätsstufe 10. Die Dateilänge beträgt 4.15 KB.

Betrachten wir nun einige Dithermöglichkeiten:

256-1

Dither ist optimierte Farbtabelle mit Fehlerdiffusion. Dateigröße 11 KB (!).

256-2

Dither ist gleichmäßige Farbtabelle. Dateigröße 3.15 KB.

256-3

Dither ist gleichmäßige Farbtabelle mit Fehlerdiffusion. Dateigröße 9.15 KB.

16-1

Dither ist Standard-VGA-Tabelle mit Fehlerdiffusion. Dateigröße 5.78 KB.

Wir sehen also, dass auch auf nicht-Truecolor-Systemen ein guter Dither erträgliche Bilder produzieren kann. Qualität und Dateilänge bei vorgeditherten Bildern erzwingt einen Trade-off.

Beispielsweise ist das erste geditherte Bild qualitativ hochwertig. Mit 11 KB ist die Datei jedoch fast dreimal so lang, wie das Truecolor-Bild.

Ein i.a. günstiges Vorgehen ist, auch das Dithern dem Browser des Betrachters zu überlassen, d.h. Echtfarbenbilder auch als Echtfarbenbilder zu transportieren. Dennoch sollte man sich als Autor klar sein, dass das Bild bei jedem Betrachter ggf. massiv verändert ist.

Man kann sich also nicht darauf verlassen, dass der Betrachter jedes Detail sehen kann. An dieser Stelle sei nochmals erwähnt, dass Bilder nicht von jedem Browser dargestellt werden können.

Das Beispiel zeigt, dass der Dither ggf. Übergänge erzeugt (genannt Fehlerdiffusion) durchführt. Dabei wird versucht, sich der wirklichen Übergang von einer Farbe über Zwischentöne zur anderen durch ein Muster verfügbarer Farben anzunähern, was bei Bildern i.a. nicht so tragisch ist.

Stellt man sich jedoch eine Zeile Text vor, so kann dieser Effekt zur oben bereits erwähnten Unleserlichkeit führen.

Farbname

Betrachten wir nun den Fall

COLOR="farbname"

Hier wird ein vordefinierter Name für die Auswahl verwendet.

Von praktisch jedem Browser werden die Namen der besonders beliebten 16 Grundfarben ausgewertet.

Farbname Farbwert Farbe Farbname Farbwert Farbe
black #000000   white #ffffff  
teal #008080   aqua #00ffff  
navy #000080   blue #0000ff  
purple #800080   fuchsia #ff00ff  
gray #808080   silver #c0c0c0  
green #008000   lime #00ff00  
olive #808000   yellow #ffff00  
maroon #800000   red #ff0000  

Der Autor benutzte i.a. die Angabe via RGB, beispielsweise benutzt er folgende Farben für den Dateirumpf.

<body text="#000000" bgcolor="#ffffff" alink="#999999"
      link="#3333cc" vlink="#cc3333">
springe zu Kapitel: [ Titel | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | F ]