# &auml; & Co. oder ä & Co?

## l3u

Hallo :-)

Wie verhält es sich denn eigentlich mit den ganzen maskierten deutschen Umlauten und dem "ß" in einem HTML-Dokument? Wenn im Header

```
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
```

steht, dann müßte man die doch an sich alle einfach so verwenden können, weil sie in dem angegebenen Zeichensatz enthalten sind, oder? Den W3C-Validator passieren solche Dokumente (ausprobiert mit XHTML 1.1) auch fehlerfrei.

Macht es also eigentlich (noch) Sinn, die Umlaute zu maskieren? Bzw. gibt es Gründe dafür, es trotzdem zu tun, obwohl man es augenscheinlich nicht muß?

MfG, Libby

----------

## hoernerfranz

 *Libby wrote:*   

> 
> 
> Macht es also eigentlich (noch) Sinn, die Umlaute zu maskieren? Bzw. gibt es Gründe dafür, es trotzdem zu tun, obwohl man es augenscheinlich nicht muß?
> 
> MfG, Libby

 

nein, es macht heutzutage eigentlich keinen sinn mehr, da mittlerweile alle halbwegs aktuellen browser den charset beachten (können).

maskierung ist evtl. noch in php scripten sinnvoll, sofern dort kein entsprechender header-eintrag (z.b. abhängig von der spracheinstellung) generiert wird.

----------

## l3u

Okay, das wollt ich hören ;-) Dann schmeiß ich einfach mal den ganzen Mist Stück für Stück raus. Weil die Lesbarkeit des Quelltextes is ja doch eingeschränkt, wenn man diesen ganzen &blabla;-Kram drinstehen hat ... außerdem vergißt man dann überm Schreiben immer Buchstaben ;-)

----------

## _hephaistos_

noch eine idee: steig auf utf-8 um...

cheers

----------

## hoschi

UTF8 = Super, sofern kein MS-Produkt wie der Internet-Explorer ins Spiel kommt...kann aber auch an was anderem liegen: Dass der IE nicht mit den offiziellen W3C-Headern für XHTML umgehen kann...oder daran dass der IE eigentlich überhaupt nicht mit XHTML umgehen kann...oder dass der IE eigentlich mit überhaupt nichts umgehen kann.

Gott, wie ich die Firma für ihren scheiß Browser hasse.

Man möge mir getrolle Unterstellen, aber deren Browser ist so abgrundtief scheiße, und der IE7 wird eher noch schlechter, nach meiner subjektiven Einschätzung.

----------

## l3u

Ich würd liebend gern UTF-8 benutzen; nur leider liefert der Server, auf dem meine Seite(n) liegt/liegen den Kram nicht als UTF-8 aus, sondern immer als ISO-8859-1, egal, was ich in den Header schreibe ... das funktioniert solang ganz nett, wie keiner nen Kommentar postet, was ins Gästebuch schreibt, etc. Weil dann gibt's Fehler bei Umlauten & Co.

----------

## sirro

 *Libby wrote:*   

> Ich würd liebend gern UTF-8 benutzen; nur leider liefert der Server, auf dem meine Seite(n) liegt/liegen den Kram nicht als UTF-8 aus, sondern immer als ISO-8859-1, egal, was ich in den Header schreibe ... das funktioniert solang ganz nett, wie keiner nen Kommentar postet, was ins Gästebuch schreibt, etc. Weil dann gibt's Fehler bei Umlauten & Co.

 

Benutzt du statische Seiten? Mit .htaccess kann man einfach das Charset aendern:

```
AddCharset UTF-8 .html
```

Oder den ganzen Content-Type mit

```
<FilesMatch "regexpr">

    ForceType 'application/xhtml+xml; charset=UTF-8

</FilesMatch>
```

Wenn die Seiten dynamisch generiert werden und der Typ mit einer Funktion wie "header" von PHP generiert wird, dann faende ich es sehr komisch wenn das nicht geht. Aber vielleicht hilft ja auch in dem Fall UTF-8.

Meine Seite macht uebrigens keine Probleme und laeuft komplett auf UTF-8, auch der IE kann die normalen Umlaute problemlos anzeigen. Fuer andere Sachen wie Chinesische Zeichen oder so fehlen ihm natuerlich die Schriftarten, aber die kann man laut Wikipedia-FAQ wohl nachinstallieren und sind bei Office >2000 schon dabei. Und die Fehlen auch wenn man andere Charsets benutzt  :Wink: 

----------

## l3u

Aha ... also ich benutze php-generierte Seiten. Das mit .htaccess kann ich ja mal ausprobieren. Also, wenn ich jetzt UTF-8 benutze, dann kann ich ohne Probleme sämtliche Umlaute, €-Zeichen, etc. im Klartext in die Dateien schreiben?

----------

## manuels

AFAIK geht das

----------

## sirro

 *Libby wrote:*   

> Also, wenn ich jetzt UTF-8 benutze, dann kann ich ohne Probleme sämtliche Umlaute, -Zeichen, etc. im Klartext in die Dateien schreiben?

 

Fast. Du musst sie natuerlich auch in UTF-8 speichern oder mit iconv umwandeln. Aber dann geht alles im Klartext, sogar chinesische Symbole etc..

----------

## platinumviper

 *Libby wrote:*   

> 
> 
> ```
> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
> ```
> ...

 

Du musst natürlich darauf achten, dass der Editor, mit dem Du die Seiten schreibst, auch wirklich diesen Zeichensatz verwendet, sonst geht es natürlich schief.

Da der ISO-8859-1 Zeichensatz kein Euro Zeichen enthält ist er veraltet und sollte durch ISO-8859-15 ersetzt werden (oder irgendeine Unicode Variante, aber siehe auch hoschis Beitrag).

platinumviper

----------

## sirro

 *platinumviper wrote:*   

> (oder irgendeine Unicode Variante, aber siehe auch hoschis Beitrag).

 

Wo ist denn das Problem des IE mit Unicodezeichen?

Die deutsche Wikipedia hat vor langer Zeit auf UTF-8 umgestellt und hat trotz einer grossen Anzahl IE-User (vor einem Jahr noch deutlich ueber 50%) quasi keine Probleme damit (fehlende Schriftarten natuerlich ausgenommen). Der einzige IE, der da wirklich Probleme macht ist der IE fuer MacOS, der ja eh noch grauenhafter sein soll als die Windows-Version.

Da ich ja selber UTF-8 fuer meine Seite nutze wuerde ich mal gerne wissen welche Fehler auftreten sollen. (Dass der IE suckt steht ja ausser Frage  :Wink: )

----------

## l3u

Hmmm ... egal, wie ... .htaccess oder sonstwas -- wenn ich ein Dokument auf dem Server speichere, das UTF-8-kodiert ist, dann wird's trotzdem als iso-8859-1 ausgeliefert und ich bekomm Unicode-Fehler bei der Anzeige. Ich schätz mal, das ist ein Serverseitiges Problem ...

----------

## _hephaistos_

jo, du musst mit php utf-8 ausgeben:

zB:

```

  mb_internal_encoding("utf-8");        

  mb_http_output("utf-8");

  mb_http_input("utf-8");

  ob_start("mb_output_handler");

echo <yourcontents>;

  $result = ob_get_contents();

  ob_end_clean();

echo $result;

```

das kannst du relativ leicht nachträglich einbauen...

cheers

----------

## l3u

Aha ... naja, scheint ja dann doch nicht so GANZ unkompliziert zu sein mit dem UTF-8 ...

----------

## dalu

du hast apache2 und gentoo als server?

irgendein "kluger kopf" dachte es währe eine gute idee einen standardcharset zu setzen.

nur leider forced der diesen charset dann für jede seite, ich hab ja wie man an meiner signatur erkennen kann mehrsprachige foren

und hatte das problem das es ums verecken nicht die utf-8 oder andersartigen zeichensätze annehmen wollte.

die lösung:

/etc/apache2/httpd.conf

```

AddDefaultCharset Off

```

statt 

AddDefaultCharset iso-wasauchimmer

----------

## hoschi

 *platinumviper wrote:*   

>  *Libby wrote:*   
> 
> ```
> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
> ```
> ...

 

Das Problem ist eigentlich recht einfach mit dem IE:

Er zickt mit XHTML generell, und mit den offiziellen Headern (die auch das W3C für die eigenen Websites nutzt) geht beim IE auch nicht viel. Man kann zwar die Header auch anders notieren, aber so wäre es wiederrum nicht ganz richtig.

 *Quote:*   

> 
> 
> So liefert das W3C seine Seiten aus:
> 
> <?xml version="1.0" encoding="UTF-8"?>
> ...

 

So zeigt der IE die Websiten an:

Panik! Umlaute! Quirks-Mode! Kaputtrendern!!![/quote]

War jetzt zwar eine übertriebende Darstellung, aber es trifft das Problem. Kann man umgehen, aber ich sehe es überhaupt nicht ein.

Zumindest so lange bei MS das Firmenmotto lautet: "Hurra, wir haben einen neuen Pseudostandard geschaffen"

----------

## nic0000

 *hoschi wrote:*   

> War jetzt zwar eine übertriebende Darstellung, aber es trifft das Problem. Kann man umgehen, aber ich sehe es überhaupt nicht ein.
> 
> Zumindest so lange bei MS das Firmenmotto lautet: "Hurra, wir haben einen neuen Pseudostandard geschaffen"

 

Absolut OT aber ich konnte es mir nicht verkneifen  :Wink: 

Ja, jetzt haben sie es bei M$ eingesehn und wollen wieder konform werden. Was aber wegen der ganzen Hacks für IE6 nicht so leicht ist. Jetzt müsstest gerade du als M$ Hasser Nr1 die Hacks benutzen um M$ das leben zu versüßen  :Razz: 

grüße

nico

----------

## l3u

 *Dalu wrote:*   

> du hast apache2 und gentoo als server?

 

Nicht jeder hat eine Standleitung und einen Computer, der Tag und Nacht läuft ;-)

Spaß beiseite -- ich bin mit meiner Website einfach nur Kunde bei einem Webspace-Anbieter. Sprich ich kann nichts, aber auch gar nichts, an der Konfiguration des Servers selbst verändern und habe nur FTP-Zugang auf meinen Webspace.

----------

## dalu

 *Libby wrote:*   

>  *Dalu wrote:*   du hast apache2 und gentoo als server? 
> 
> Nicht jeder hat eine Standleitung und einen Computer, der Tag und Nacht läuft 
> 
> Spaß beiseite -- ich bin mit meiner Website einfach nur Kunde bei einem Webspace-Anbieter. Sprich ich kann nichts, aber auch gar nichts, an der Konfiguration des Servers selbst verändern und habe nur FTP-Zugang auf meinen Webspace.

 

hmm ok  :Smile: 

du kannst es auch in die .htaccess packen, funktioniert laut 

http://httpd.apache.org/docs/2.0/mod/core.html#adddefaultcharset

dann funktioniert das mit den (x)html metatags auch  :Smile: 

----------

## hoschi

 *nic0000 wrote:*   

>  *hoschi wrote:*   War jetzt zwar eine übertriebende Darstellung, aber es trifft das Problem. Kann man umgehen, aber ich sehe es überhaupt nicht ein.
> 
> Zumindest so lange bei MS das Firmenmotto lautet: "Hurra, wir haben einen neuen Pseudostandard geschaffen" 
> 
> Absolut OT aber ich konnte es mir nicht verkneifen 
> ...

 

Du wirst lachen  :Very Happy: 

Ich habe alle IE-Hacks in meiner (vergleichsweise winzigen) Seite schon vor 6 Monaten entfernt, für mich sind die IE-User einfach keine Zielgruppe die es Wert wäre sowas mitzumachen. Gecko und Opera rendern alles richtig, Konqueror macht einen kleinen Fehler den er nicht machen dürfte und beim IE ist Hopfen und Malz verloren.

Keine Brauserweiche, keine Anti-IE Popups oder andere total ausgeartete Aktionen. Der Browser hält sich nicht an die Standards (auch der IE7 nicht), ich schon, sollen die sich anpassen. Derjenige der sich am schnellsten anpassen kann überlebt, nicht derjenige der am stärksten ist (meine Meinung zur Evolutionstheorie).

----------

## sirro

 *hoschi wrote:*   

> <?xml version="1.0" encoding="UTF-8"?>
> 
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

 

Genau das sind meine ersten beiden Zeilen. Als application/xhtml+xml liefer ich allerdings nur fuer die Browser aus, die es auch koennen. Sonst wuerde beim IE und aelteren Browsern ein Downloaddialog aufgehen.  :Wink:  Die sollen die Seite ja wenigstens lesen koennen, auch wenn sie (gerade IE und der alte Netscape) das CSS nicht koennen.

Aber mit der o.g. Konstellation ist UTF-8 beim IE laut Freunden kein Problem. Natuerlich wird auch UTF-8 als HTTP-Header gesendet, vielleicht liegt es ja auch daran... Ich koennte mir vorstellen, dass der IE nicht das xml-encoding aus der ersten Zeile nimmt  :Wink: 

Hab vor ein paar Tagen auch meine Seite ohne Ruecksicht auf Verluste auf ein CSS umgestellt, dass ich nur mit Opera, Gecko und KHTML getestet habe. Ich war ueberracht als mir jemand einen IE6 Screenshot geschickt hat: Ok, es waren viele Fehler drin, aber es blieb alles lesbar.  :Smile: 

----------

