&...; im title-Element?
Heiner
- html
0 Cheatah0 Marcus0 emu
0 Christian Seiler0 Cheatah
Hallo,
Sollte man Umlaute oder andere Sonderzeichen im title-Element oder im alt- und title-Attribut verwenden? Sollte man sie per &...; einbinden, etwa durch die Unicode-nummer oder durch ä o. ä.? Welche Browser haben wo Schwierigkeiten?
Also:
1. <title>Blödsinn</title>
2. <title>Blödsinn</title>
3. <title>Bl&#...;dsinn</title>
4. <title>Bloedsinn</title>
...
Heiner
Hi,
Sollte man Umlaute oder andere Sonderzeichen im title-Element oder im alt- und title-Attribut verwenden?
selbstverständlich nicht. Innerhalb des <body> wäre es erlaubt, sofern Du im <head> ein entsprechendes Encoding angegeben hast; sinnvoll ist es dennoch nur bedingt.
Sollte man sie per &...; einbinden, etwa durch die Unicode-nummer oder durch ä o. ä.?
Ja.
Welche Browser haben wo Schwierigkeiten?
Keine. Wenn einer damit nicht klarkommt, versagt er bereits bei den allergrundlegendsten Prinzipien von HTML und ist somit keinesfalls beachtenswert. Nicht einmal der IE ist so schlecht.
Cheatah
Keine. Wenn einer damit nicht klarkommt, versagt er bereits bei den allergrundlegendsten Prinzipien von HTML und ist somit keinesfalls beachtenswert. Nicht einmal der IE ist so schlecht.
Kleine Einschränkung: Werden DoubleBit-Zeichen (z.B. Chinesisch) per HTML-Entität sowohl in BODY und TITLE verwendet, erfolgt im BODY die korrekte Darstellung, im TITLE jedoch nicht. Soviel zum IE. :)
Gruss
Marcus
Hallo!
Werden DoubleBit-Zeichen (z.B. Chinesisch) per HTML-Entität sowohl in BODY und TITLE verwendet, erfolgt im BODY die korrekte Darstellung, im TITLE jedoch nicht. Soviel zum IE. :)
Und du bist dir ganz sicher, dass das mit dem Browser und nicht etwa mit der Schriftart zusammenhängt?
emu
Hallo Cheatah,
Sollte man Umlaute oder andere Sonderzeichen im title-Element oder im alt- und title-Attribut verwenden?
selbstverständlich nicht.
Warum nicht? Bei korrekt angegebenen Encoding im HTTP-Header oder per Metatag, der vor den Umlauten auftaucht, ist das doch kein Problem.
Innerhalb des <body> wäre es erlaubt, sofern Du im <head> ein entsprechendes Encoding angegeben hast; sinnvoll ist es dennoch nur bedingt.
Warum sollte das nur bedingt sinvoll sein? Was spricht dagegen, es so zu tun?
Viele Grüße,
Christian
Hi,
Sollte man Umlaute oder andere Sonderzeichen im title-Element oder im alt- und title-Attribut verwenden?
selbstverständlich nicht.Warum nicht? Bei korrekt angegebenen Encoding im HTTP-Header oder per Metatag, der vor den Umlauten auftaucht, ist das doch kein Problem.
es ist auch vom <title>-Element die Rede, welches sich im <head> befindet. Jede Angabe innerhalb eines Headers bezieht sich erst auf den Body.
Innerhalb des <body> wäre es erlaubt, sofern Du im <head> ein entsprechendes Encoding angegeben hast; sinnvoll ist es dennoch nur bedingt.
Warum sollte das nur bedingt sinvoll sein? Was spricht dagegen, es so zu tun?
Das Encoding kann z.B. unbekannt sein.
Cheatah
Hallo Cheatah,
Sollte man Umlaute oder andere Sonderzeichen im title-Element oder im alt- und title-Attribut verwenden?
selbstverständlich nicht.Warum nicht? Bei korrekt angegebenen Encoding im HTTP-Header oder per Metatag, der vor den Umlauten auftaucht, ist das doch kein Problem.
es ist auch vom <title>-Element die Rede, welches sich im <head> befindet. Jede Angabe innerhalb eines Headers bezieht sich erst auf den Body.
Könntest Du mir bitte die Stelle im HTML-Standard nennen, in der das beschrieben steht? (oder wenigstens einen passenden Suchbegriff) Ich finde das irgendwie nicht...
Innerhalb des <body> wäre es erlaubt, sofern Du im <head> ein entsprechendes Encoding angegeben hast; sinnvoll ist es dennoch nur bedingt.
Warum sollte das nur bedingt sinvoll sein? Was spricht dagegen, es so zu tun?Das Encoding kann z.B. unbekannt sein.
Theoretisch möglich, aber zumindest bei Latin1 praktisch gesehen nicht. Bei anderen Encodings, die nicht so häufig vorkommen, gebe ich Dir aber auch praktisch Recht.
Viele Grüße,
Christian
Hi Christian,
Das Encoding kann z.B. unbekannt sein.
Theoretisch möglich, aber zumindest bei Latin1 praktisch gesehen nicht. Bei anderen Encodings, die nicht so häufig vorkommen, gebe ich Dir aber auch praktisch Recht.
bist Du in der Lage, eine Positivliste "unbedenklicher" Encodings anzugeben, welche von allen relevanten UserAgents (inklusive Suchmaschinen-Robots!) problemlos verstanden werden?
Viele Grüße
Michael
Hallo Michael,
bist Du in der Lage, eine Positivliste "unbedenklicher" Encodings anzugeben, welche von allen relevanten UserAgents (inklusive Suchmaschinen-Robots!) problemlos verstanden werden?
Ja, genau einen: Latin1. Der ist nämlich der Default-Charset bei HTTP, daher muss ein korrekt funktionierender UserAgent diesen interpretieren. Dies lässt zwar eigentlich nicht auf die tatsächliche Umsetzung bei UserAgents rückschließen, allerdings wird heute so oft das Encoding nicht angegeben und die Sonderzeichen werden nicht als Entities maskiert, dass es sich ein UserAgent nicht leisten kann, Latin1 nicht zu unterstützen.
Viele Grüße,
Christian
Hallo Christian,
es ist auch vom <title>-Element die Rede, welches sich im <head> befindet. Jede Angabe innerhalb eines Headers bezieht sich erst auf den Body.
Könntest Du mir bitte die Stelle im HTML-Standard nennen, in der das beschrieben steht? (oder wenigstens einen passenden Suchbegriff) Ich finde das irgendwie nicht...
Da kannst du auch lange suchen, das ist nämlich Quatsch. Die Kodierungsangabe in einem den Content-Type-Header ersetzenden meta-Element im head bezieht sich auf das ganze Dokument ab dem Element, nicht nur auf den body. Beispielsweise in title- und style-Elementen sowie in Attributwerten der meta- und link-Elemente sind Nicht-ASCII-Zeichen durchaus erlaubt, wenn die Kodierung wie du sagtest vorher angegeben ist, bestenfalls das erste Kindelement von head ist:
»The META declaration must only be used when the character encoding is organized such that ASCII-valued bytes stand for ASCII characters (at least until the META element is parsed). META declarations should appear as early as possible in the HEAD element.«
http://www.w3.org/TR/html401/charset.html#h-5.2.2
Mit »at least until the META element is parsed« wird der Sachverhalt meiner Meinung nach überdeutlich. Wenn das meta-Element irgendwo im head-Element auftauchen könnte, weil es sowieso nur für die Zeichendaten im body gilt bzw. so interpretiert wird, wäre auch der letzte Satz widersinnig.
Mathias
Hi,
schon klar... nur mal eine Frage dazu: irgendwo habe ich mal gelesen, daß in XHTML der title das erste Element im Head sein soll (muß?). Wenn das zutrifft und man die Kodierung wegen dem IE nicht per XML voranstellen will, gibt's doch das Problem immer noch, oder?
freundliche Grüße
Ingo
Hallo Ingo,
irgendwo habe ich mal gelesen, daß in XHTML der title das erste Element im Head sein soll (muß?).
Das ist falsch. Aus der XHTML 1.0 Strict DTD: http://www.w3.org/TR/xhtml1/dtds.html#dtdentry_xhtml1-strict.dtd_head
----------------------------------------------------------
<!-- content model is %head.misc; combined with a single
title and an optional base element in any order -->
<!ELEMENT head (%head.misc;,
((title, %head.misc;, (base, %head.misc;)?) |
(base, %head.misc;, (title, %head.misc;))))>
----------------------------------------------------------
Betonung liegt dabei auf »in any order«. Mach Dir doch nicht unnötig Probleme, wo keine sind. ;-)
Viele Grüße,
Christian