Cascading Style Sheets ::Artikel
HTML-Elemente und Attribute durch CSS ersetzen
Traditionell wurden viele Merkmale der Darstellung einer Website durch HTML-Elemente und -Attribute realisiert. Das hat sich seit dem Erscheinen der Spezifikation 'HTML 4.01' gegen Ende 1999 geändert. Dort sind fast sämtliche Elemente und Attribute, die nur der Präsentation dienen, als unerwünscht (='deprecated') gekennzeichnet. Sie sollen durch CSS-Deklarationen ersetzt werden. Die heute noch aktuelle Version CSS 2.0 ist bereits seit Mai 1998 gültig. Die angepasste Version 2.1 dient heute als de-fakto-Standard, auch wenn sie genau genommen noch keinen normativen Status erreicht hat. Aber erst seitdem die modernen Browser die CSS-Regeln größtenteils unterstützen, gehen mehr und mehr Webautoren dazu über, die Trennung von Inhalt und Präsentation konsequent durchzuführen.
Diese Seite gibt eine Übersicht darüber, inwieweit die zur Darstellung verwendeten HTML-Attribute und -Elemente heute durch CSS-Eigenschaften ersetzt werden können.
Browserhersteller sind gehalten, die Element/Attribut-Kombinationen zur Präsentation weiterhin zu unterstützen, um Rückwärtskompatibilität zu gewährleisten. CSS 2.1 beschreibt die Handhabung dieser 'präsentationellen Hinweise' durch die Browser genauer. Mehr darüber im Artikel Neu in CSS 2.1.
Ein Punkt, auf den auf dieser Seite immer wieder hingewiesen wird, ist die ambivalente Verwendung des Attributs align
in HTML 4. Es gibt keine eindeutige und allgemein gültige Verwendung dieses Attributs. An einigen Elementen dient es dazu, das Element selbst auf eine Seite des Dokuments zu schieben, entsprechend der CSS-Eigenschaft float
. In anderen (Block-Level-)Elementen hat es ausschließlich Bedeutung für die Textorientierung innerhalb des Elements. Dies entspricht der CSS-Eigenschaft text-align
. Ebenso kann align
, abhängig vom jeweiligen Element, unterschiedliche Werte annehmen.
Nun noch einige Hinweise zur Tabelle:
- Auf der rechten Seite der Tabelle sind nur die Deklarationen oder Regeln eingetragen, die zur genauen Umsetzung der HTML-Features nötig sind. Wer sich aber ein wenig mit der Materie beschäftigt, wird schnell feststellen, dass CSS bereits heute weit mehr Gestaltungsmöglichkeiten bietet, als HTML es jemals konnte.
- Die Verwendung der so gekennzeichneten Elemente und Attribute wird vom W3C missbilligt. Sie sind deshalb alle nicht mehr Teil der strikten DTD, einige wurden sogar aus der transitionellen DTD entfernt.
(Fast) alle ElementeDie hier genannten HTML-Attribute gelten für alle Elemente außer den folgenden: | |||
---|---|---|---|
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
(Siehe Text oben) | dir="<keyword>" |
direction: <keyword>; | |
(Siehe Text oben) | lang="language-code" |
E:lang(<language-code>) { ... } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
APPLET |
align |
[parent] { text-align: <keyword>; } oderobject { float: <keyword>; } | |
|
height |
object { height: <length> } | |
hspace |
object { margin-right: <length> } | ||
vspace |
object { margin-top: <length> } | ||
width |
object { width: <length> } | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
B |
— | span { font-weight: bold; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
BASEFONT |
color="#hexvalue" |
span { color: <value>; } | |
color="<keyword>" |
span { color: <keyword>; } | ||
face="<font name>" |
span { font-family: <font-family>; } oderspan { font-family: <generic family>; } | ||
size="<integer>"
|
span { font-size: <length>; } | ||
size="<+inkrement>" |
span { font-size: larger; } | ||
size="<-inkrement>" |
span { font-size: smaller; } | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
BDO |
dir="<keyword>" |
direction: <keyword>; und:Unicode- bidi: bidi-override; | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
BIG |
— | span { font-size: large; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
BLOCKQUOTE |
cite=<uri> |
content: <uri> in Verbindung mit :before und :after | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
BODY |
alink |
:active | |
background |
background-image: <URI> | ||
bgcolor |
background-color: <keyword> | ||
link |
:link | ||
text |
color | ||
vlink |
:visited | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
BR |
clear |
clear: <keyword> | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
CAPTION |
align |
caption-side: <keyword>; | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
CENTER |
— | [PARENT] { text-align: center; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
COL , COLGROUP |
align |
text-align: <keyword> | |
char |
text-align: "string" | ||
valign |
vertical-align: <keyword> | ||
width |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
DIV |
align |
div { text-align: <keyword>; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
FONT |
color="#hexvalue" |
span { color: <value>; } | |
color="<keyword>" |
span { color: <keyword>; } | ||
face="<font name>" |
span { font-family: <font-family>; } oderspan { font-family: <generic family>; } | ||
size="<integer>"
|
span { font-size: <length>; } | ||
size="<+inkrement>" |
span { font-size: larger; } | ||
size="<-inkrement>" |
span { font-size: smaller; } | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
FRAME |
marginheight |
(CSS-basiertes Layout verwenden) | |
marginwidth |
(CSS-basiertes Layout verwenden) | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
H1 , H2 , H3 , H4 , H5 , H6 |
align |
float: <keyword>; | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
HR |
align |
float: <keyword>; | |
color |
background-color: <keyword>; | ||
noshade |
border-style: solid; | ||
size |
height: <length>; | ||
width |
width: <length>; | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
I |
— | span { font-style: italic; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
IFRAME |
align |
float: <keyword>; odertext-align: <keyword> | |
height |
height: <length>; | ||
marginheight |
margin-top, margin-bottom: <length> | ||
marginwidth |
margin-right, margin-left: <length> | ||
scrolling |
overflow: <keyword>; | ||
width |
width: <length>; | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
IMG |
align |
text-align: <keyword>; oderfloat: <keyword>; | |
border |
border: <keyword> oder abgeleitete Eigenschaften | ||
height |
height: <length> | ||
hspace |
margin-right, margin-left: <length> | ||
vspace |
margin-top, margin-bottom: <length> | ||
hspace und vspace |
margin: <length> , 1 oder 2 Werte | ||
width |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
INPUT |
align |
text-align: <keyword>; oderfloat: <keyword>; | |
size |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
LABEL |
align |
text-align: <keyword>; | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
LI |
compact |
list-style-position: inside | |
type |
list-style-type: <identifier> | ||
value |
LI { counter-reset <identifier> } oderLI { counter-increment <identifier> } | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
OBJECT |
align |
text-align: <keyword>; oderfloat: <keyword>; | |
border |
border: <keyword> oder abgeleitete Eigenschaften | ||
height |
height: <length> | ||
hspace |
margin-right, margin-left: <length> | ||
vspace |
margin-top, margin-bottom: <length> | ||
hspace und vspace |
margin: <length> , 1 oder 2 Werte | ||
width |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
OL |
compact |
list-style-position: inside | |
start |
OL { counter-reset <identifier> } oderOL { counter-increment <identifier> } | ||
type |
list-style-type: <identifier> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
P |
align |
text-align: <keyword>; | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
PRE |
— | white-space: pre; | |
width |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
Q |
cite=<uri> |
content: <uri> in Verbindung mit :before und :after | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
S |
— | SPAN { text-decoration: line-through; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
SMALL |
— | span { font-size: small; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
SPAN |
align |
(Hängt vom Einzelfall ab) | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
STRIKE |
— | SPAN { text-decoration: line-through; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
SUB |
— | SPAN { vertical-align: sub; font-size: <keyword> } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
SUP |
— | SPAN {vertical-align:super; font-size: <keyword> } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
TABLE |
align |
float: <keyword>; | |
bgcolor |
background-color: <keyword> | ||
border |
border: <keyword> oder abgeleitete eigenschaften | ||
cellspacing |
border-spacing | ||
cellpadding |
td { padding: <length>} odermargin an den inhalt | ||
frame="void" |
border: none; | ||
frame="above" |
border-top-style: solid; oderborder-style: solid none none; | ||
frame="below" |
border-bottom-style: solid; oderborder-style: none none solid; | ||
frame="hsides" |
border-style: solid none; | ||
frame="lhs" |
border-left-style: solid; oderborder-style: none none none solid; | ||
frame="rhs" |
border-right-style: solid; oderborder-style: none solid none none; | ||
frame="vsides" |
border-style: none solid; | ||
frame="box" |
border: solid; | ||
frame="border" |
border: solid; | ||
rules="none" |
colgroup, col, thead, tfoot, tbody { | ||
rules="groups" |
td { | ||
rules="rows" |
td { | ||
rules="cols" |
td { | ||
rules="all" |
td { | ||
width |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
THEAD , TFOOT , TBODY |
align |
text-align: <keyword> | |
char |
text-align: "string" | ||
valign |
vertical-align: <keyword> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
TH , TD |
align |
text-align: <keyword> | |
bgcolor |
background-color: <keyword> | ||
char |
text-align: "string" | ||
charoff |
(nicht möglich) | ||
height |
height: <length> | ||
nowrap |
white-space: nowrap | ||
valign |
vertical-align: <keyword> | ||
width |
width: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
TEXTAREA |
cols |
width: <length> | |
rows |
height: <length> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
TR |
align |
text-align: <keyword> | |
bgcolor |
background-color: <keyword> | ||
char |
text-align: "string" | ||
valign |
vertical-align: <keyword> | ||
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
TT |
— | span { font-family: monospace; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
U |
— | SPAN { text-decoration: underline; } | |
| |||
HTML-Element | HTML-Attribut/Wert | CSS-Realisierung: Selektoren, Deklarationen | |
UL |
compact |
list-style-position: inside | |
TOP |
type |
list-style-type: <identifier> |