<FONT FACE>, font-family und der Standard
Christian Eyrich
- css
0 Sven Rautenberg0 DG
Hallo zusammen,
ich komme leider etwas ins Schleudern bei gleichzeitiger Verwendung von Font-Angaben in HTML und CSS. In HTML gebe ich die rudimentären Formatierungen weiterhin ein, um die Seite auch in nicht (voll) CSS-fähigen Browsern halbwegs so anzeigen zu lassen wie ich möchte.
Also folgendermaßen sieht der Code aus (vereinfacht):
<HEAD>
<style type="text/css">
* {font-family:sans-serif;}
</style>
</HEAD>
<BODY>
<FONT FACE="sans-serif">
Texttest Testtext Texttest Testtext Texttest Testtext<BR>
Texttest Testtext Texttest Testtext
<P>
Texttest Testtext Texttest.
<PRE STYLE="font-family:monospace;">
Tesliste Listentext
Tesliste Listentext Tesliste
Listentext
Tesliste Listentext
</PRE>
</FONT>
</BODY>
In welchem Font sollte der per <PRE> umschlossene Text angezeigt werden? Also was sagt der Standard (ich bin da leider nicht fündig geworden), nicht die Browserhersteller?
Falsch ist es, ein das ganze Dokument umschliesendes <FONT> zu erstellen, daß darf lt. Standard nicht sein. Dafür gibt es irgendeine Angabe für den das BODY-Tag, aber das funktioniert in einem der beiden (NS oder IE) nicht.
Grüße,
Christian
Moin!
ich komme leider etwas ins Schleudern bei gleichzeitiger Verwendung von Font-Angaben in HTML und CSS. In HTML gebe ich die rudimentären Formatierungen weiterhin ein, um die Seite auch in nicht (voll) CSS-fähigen Browsern halbwegs so anzeigen zu lassen wie ich möchte.
Ein Unterfangen, was zum Scheitern verurteilt sein wird. Es hat seinen Grund, warum <font> vom W3C als "deprecated" (unerwünscht) markiert wurde.
Außerdem gibt es nur CSS-fähige Browser und CSS-unfähige Browser. Erstere sind sehr weit verbreitet (Netscape 4+, IE 3+, Opera 3+ u.a.), und letztere sind kaum noch im Einsatz (Netscape bis V3.0, IE bis 2.0, Lynx). Alle CSS-fähigen Browser sind in der Lage, die Schriftart über CSS zu formatieren. Alle CSS-unfähigen Browser sind dazu nicht in der Lage, haben aber Standardformatierungen für alle HTML-Elemente.
Es ist daher reichlich unklug, mit <font> zu operieren: Weniger als 1% aller User würden davon profitieren (oder hast du eine andere Besucherzusammensetzung?), aber du hast die Probleme des <font> an den Fingern, und schreibst keine modernen HTML-Seiten, sondern hängst weiterhin an den Relikten der Vergangenheit.
Das kannst du natürlich machen, aber warum dann CSS?
In welchem Font sollte der per <PRE> umschlossene Text angezeigt werden? Also was sagt der Standard (ich bin da leider nicht fündig geworden), nicht die Browserhersteller?
Eine Empfehlung des W3C für Defaultwerte ist hier: http://www.w3.org/TR/REC-CSS2/sample.html
Aber nichts davon ist bindend.
Falsch ist es, ein das ganze Dokument umschliesendes <FONT> zu erstellen, daß darf lt. Standard nicht sein. Dafür gibt es irgendeine Angabe für den das BODY-Tag, aber das funktioniert in einem der beiden (NS oder IE) nicht.
Falsch ist es, <font> überhaupt noch zu verwenden.
- Sven Rautenberg
Tach
Außerdem gibt es nur CSS-fähige Browser und CSS-unfähige Browser.
Naja, mit "nicht (voll) fähig" meinte ich welche die die Standards nicht voll implementiert haben (was aktuell keiner für sich beanspruchen kann). Bezogen auf grundlegende Fähigkeiten wie Fontangaben gibt es aber sicherlich nur ganz oder gar nicht, da gebe ich Dir recht.
Es ist daher reichlich unklug, mit <font> zu operieren: Weniger als 1% aller User würden davon profitieren (oder hast du eine andere Besucherzusammensetzung?), aber du hast die Probleme des <font> an den Fingern, und schreibst keine modernen HTML-Seiten, sondern hängst weiterhin an den Relikten der Vergangenheit.
Hänge ich nicht gerne oder mit Wehmut und wie oben geschrieben sehe ich es mit <FONT> ja ein (meine Seiten sind schon geändert). In anderen Fällen bin ich jedoch schon der Meinung, daß man eine Weile noch zweigleisig fahren sollte soweit es der Modernisierung nicht wirklich schadet.
Das kannst du natürlich machen, aber warum dann CSS?
Weil ich durchaus der Meinung bin das ist die Zukunft. Und weil ich Usern mit aktuellen Browsern meine Seiten so zeigen möchte wie sie aussehen sollen.
Falsch ist es, <font> überhaupt noch zu verwenden.
Welche Aufgabe wird denn HTML in Zukunft noch haben wenn das alles wegfällt? Nur noch zur Strukturierung der Seite und formatiert wird ausschließlich in CSS, wie bei TeX bzw. LaTeX?
Gruß,
Christian Eyrich
Yo!
Außerdem gibt es nur CSS-fähige Browser und CSS-unfähige Browser.
Naja, mit "nicht (voll) fähig" meinte ich welche die die Standards nicht voll implementiert haben (was aktuell keiner für sich beanspruchen kann).
Also alle Browser, die es gibt, und die etwas CSS können... :)
Bezogen auf grundlegende Fähigkeiten wie Fontangaben gibt es aber sicherlich nur ganz oder gar nicht, da gebe ich Dir recht.
Eben.
Es ist daher reichlich unklug, mit <font> zu operieren: Weniger als 1% aller User würden davon profitieren (oder hast du eine andere Besucherzusammensetzung?), aber du hast die Probleme des <font> an den Fingern, und schreibst keine modernen HTML-Seiten, sondern hängst weiterhin an den Relikten der Vergangenheit.
Hänge ich nicht gerne oder mit Wehmut und wie oben geschrieben sehe ich es mit <FONT> ja ein (meine Seiten sind schon geändert). In anderen Fällen bin ich jedoch schon der Meinung, daß man eine Weile noch zweigleisig fahren sollte soweit es der Modernisierung nicht wirklich schadet.
Warum zweigleisig fahren? Du kannst entweder die volle Ladung von CSS nutzen und bist dadurch einerseite freier in der Gestaltung von Nicht-CSS-Seiten (und die Schriftart gehört in diesem Zusammenhang nicht zur "Gestaltung" - darunter ist die Art und Reihenfolge der Anzeige der Informationen zu verstehen), andererseits hast du eben wesentlich mehr Gestaltungsmöglichkeiten.
Oder du nimmst kein CSS, sondern Old-Style-Designs mit Tabellen und <font>. Dann hast du keinerlei Einflußnahme auf die Reihenfolge des Content (was für Browser, die keine Tabellen verstehen, oder keine Frames, richtig doof ist), aber immerhin kriegst du noch eine vernünftige Anzeige im Netscape 3 (vielleicht sogar 2) hin.
Sorry, aber der Weg trennt sich: Auf der einen Seite sind CSS-kompatible Browser, welche von der Anwendung von CSS grafisch profitieren und schöne Seiten anzeigen. Diese Browser sind in der überwältigenden Mehrheit der verwendeten Systeme. Und dann gibts CSS-lose Browser, die von der Anwendung von CSS ebenfalls profitieren: Kleinere Seiten (weil elend lange <font>-Arien wegfallen, und Formatierungen in externe CSS-Dateien ausgelagert sind, die einfach ignoriert werden), und ein vernünftig angeordneter Informationsfluß (wenn der Ersteller der Seiten daran denkt und nicht wild in der Gegend rumschreibt).
Es gibt einfach keinen nennenswerten Vorteil, altes und neues System zu mischen.
Das kannst du natürlich machen, aber warum dann CSS?
Weil ich durchaus der Meinung bin das ist die Zukunft. Und weil ich Usern mit aktuellen Browsern meine Seiten so zeigen möchte wie sie aussehen sollen.
Richtig, CSS ist die Zukunft. Aber auch schon die Gegenwart! Und wenn du ohnehin CSS einsetzt - warum dann nicht komplett umsteigen? Wieviele alte Browser besuchen deine Seiten _wirklich_? Bedenke dabei: "Mozilla/3.0 (compatible;)" ist in Wirklichkeit ein IE 5.5, der Bilder vom Server lädt (warum auch immer er das so macht).
Falsch ist es, <font> überhaupt noch zu verwenden.
Welche Aufgabe wird denn HTML in Zukunft noch haben wenn das alles wegfällt? Nur noch zur Strukturierung der Seite und formatiert wird ausschließlich in CSS, wie bei TeX bzw. LaTeX?
HTML ist für die logische Struktur zuständig, CSS für die Formatierung der Struktur, und Javascript für die Dynamik. TeX/LaTeX ist da nicht ganz vergleichbar, weil man Formatierungsbefehle ja ebenfalls in dieser Sprache schreibt, aber im Prinzip ist das richtig: HTML beschreibt, was für ein Element gemeint ist (Überschrift, Absatz, ...), und CSS sagt, wie es aussehen soll. Fehlt CSS, sieht man immer noch das HTML, und damit die Information und ihre Struktur.
- Sven Rautenberg
Hi Sven,
Bedenke dabei: "Mozilla/3.0 (compatible;)" ist in Wirklichkeit ein IE
5.5, der Bilder vom Server lädt (warum auch immer er das so macht).
hast Du für diese (mich überraschende) Aussage einen Link zur Hand?
Viele Grüße
Michael
(der Unmengen von M$IE 5.5 unter seinen Benutzern hat, aber sämtliche
Mozilla/3.0-Angaben seines error_logs zweifelsfrei einem seinen Cache
aktiv validierenden Proxy-Server eines Kunden zuordnen kann)
hi
Hänge ich nicht gerne oder mit Wehmut und wie oben geschrieben sehe ich es mit <FONT> ja ein (meine Seiten sind schon geändert). In anderen Fällen bin ich jedoch schon der Meinung, daß man eine Weile noch zweigleisig fahren sollte soweit es der Modernisierung nicht wirklich schadet.
die Zeit ist vorbei. Zur Verbreitung von nicht CSS-Fähigen browsern (der einzige, der hier von den ServerStats überhaupt noch erfasst wird (als mehr als 0,01%) ist Netscape 3. Dazu muss man allerdings sagen, dass man, wenn man alle Forem-Beiträge ließt etwa 0,1% der Hits für ganz teamone.de schafft - es gibt hier einen bekennenden Netscape 3-Fulltime-User und der MA ist gesagt 0,12% derzeit, womit also etwa jeder 3000ste Besucher einen browser hat, der sich als Netscape 3 ausgibt - wie viele davon auch noch echt sind ist die nächste Frage..
Grüße aus Bleckede
Kai
Hallo!
Falsch ist es, <font> überhaupt noch zu verwenden.
Welche Aufgabe wird denn HTML in Zukunft noch haben wenn das alles wegfällt?
Der einzige Zweck von HTML ist es, Texte logisch zu formatieren. Dass vor mittlerweile langer Zeit der aus heutiger Sicht lächerliche Browserkrieg zwischen Netscape und Microsoft dazu geführt hat, dass Tags, die eigentlich Design sind, oder noch schlimmer Tags, die den Browser zu dynamischen Aktionen verleiten, verwendet wurden und leider noch immer werden, lässt viele glauben, dass HTML dazu gedacht ist, die Darstellung oder sogar das Browserfenster zu verändern. Das ist aber Sache des Browsers bzw. von Stylesheets, die allerdings natürlich auch sinnvoll eingesetzt werden müssen.
Der allgemeine WWWWahn der letzten Jahre lässt oft viele vergessen, wofür das Internet im Allgemeinen und das Web im Speziellen gedacht sind - und das ist nicht Fernsehen 2.
So, Moralpredigt beendet ;-)
emu
[...]
Hallo.
<PRE STYLE="font-family:monospace;">
In welchem Font sollte der per <PRE> umschlossene Text angezeigt werden? Also was sagt der Standard
Für CSS-fähige UAs: monospace. Inline-CSS hat höchsten Vorrang, sofern nicht irgenwo !important verwendet wurde, was bei dir nicht der Fall ist.
Für CSS-unfähige UAs: Der voreingestellte Standardstil für PRE, meist diktengleiches Courier.
Hallo auch,
<PRE STYLE="font-family:monospace;">
In welchem Font sollte der per <PRE> umschlossene Text angezeigt werden? Also was sagt der Standard
Für CSS-fähige UAs: monospace. Inline-CSS hat höchsten Vorrang,
sofern nicht irgenwo !important verwendet wurde, was bei dir nicht
der Fall ist.
Tja, das dachte ich nämlich auch.
Mozilla macht das nämlich nicht, der stellt es in sans-serif (wie im obersten FONT-Tag beschrieben) dar. Schreibe ich jedoch statt monospace 'courier new', also keine Familie, sondern einen eindeutigen Font, dazu, wird's wieder korrekt angezeigt.
Gut inzwischen hat sich das Problem erledigt, indem ich einfach alle FONT-Angaben in HTML raus habe. Und ob man das Mozilla als Fehler ankreiden kann wo doch die Seite zwei Fehler enthält (alles umspannender <FONT> und dadurch mit <P> und <PRE> Block-Elemente innerhalb eines Inline-Elements), bin ich mir auch nicht mehr so sicher.
Gruß,
Christian
hi
Mozilla macht das nämlich nicht, der stellt es in sans-serif (wie im obersten FONT-Tag beschrieben) dar. Schreibe ich jedoch statt monospace 'courier new', also keine Familie, sondern einen eindeutigen Font, dazu, wird's wieder korrekt angezeigt.
eh, dass bei den Beiden angaben was anderes rauskommt, ist klar - "Courier New" gehört in die Gruppe 'monospace', nicht 'sans-serif' !
Grüße aus Bleckede
Kai