|
|
Hallo zusammen,
ich habe zwei Fragen, ich hoffe ihr könnt mir weiter helfen.
wenn ich UTF-8-Kodierte Seiten erstelle, ist ja nicht mehr notwendig Umlaute und Sonderzeichen als entities einzugeben, ist das so richtig?
was passiert aber wenn der Besucher meiner Seite die Zeichensatz nicht hat, die ich auf meiner Seite eingegeben habe, was sieht er dann?
Auf eine Antwort würde ich mich sehr freuen.
Danke und gruß, enrico
|
|
| 08.06.2007 06:28:25 |
|
|
|
mir fällt gerade noch eine wichtige Frage an :)
bei:
<html xml:lang="de" lang="de" xmlns="http://www.w3.org/1999/xhtml">
wird ja schon die Sprache "de" angegeben, ist es notwendig die Angabe noch in meta tag anzugeben?
<meta http-equiv="Content-Language" content="de" />
|
|
| 08.06.2007 06:45:53 |
|
HTMELL
Administrator
Registriert: 11.05.2006
Beiträge: 544
|
|
Hallo,
| wenn ich UTF-8-Kodierte Seiten erstelle, ist ja nicht mehr notwendig Umlaute und Sonderzeichen als entities einzugeben, ist das so richtig? |
Richtig
| was passiert aber wenn der Besucher meiner Seite die Zeichensatz nicht hat, die ich auf meiner Seite eingegeben habe, was sieht er dann? |
Alle Browser verwenden dann die jeweilige Standardschrift
| wird ja schon die Sprache "de" angegeben, ist es notwendig die Angabe noch in meta tag anzugeben? |
Nein
_______________________________________ mfg Thomas Mell
www.validome.org
|
|
| 08.06.2007 14:24:58 |
|
marlo
Mitglied
Ort: Wien
Registriert: 07.06.2007
Beiträge: 73
|
|
Kurze Anmerkung:
Mir ist aufgefallen dass man das & zeichen auch bei UTF-8 codierten Seiten in HTML-encoden sollte (amp;). Gibt bei der Validierung zwar nur ein Warning, ist aber hübscher wenn alles GRÜN ist ;-)
lg roman
|
|
| 09.06.2007 15:16:45 |
|
marlo
Mitglied
Ort: Wien
Registriert: 07.06.2007
Beiträge: 73
|
|
So nun habe ich mal eine wirklich wichtige Frage:
Bei der validierung auf w3 beanstandet "er" mir die & als Warnings, hier bei "euch" nicht.
Kann mir das jemand erklären?
Vielen Dank für eine Antwort im Voraus.
lg roman
|
|
| 09.06.2007 15:28:57 |
|
HTMELL
Administrator
Registriert: 11.05.2006
Beiträge: 544
|
|
Hi, das kann ich so nicht beantworten, da es vom Dokumententyp und dem Kontext in dem sich das "&" befindet abhängig ist. Etwas Code oder eine URL wäre Hilfreich.
_______________________________________ mfg Thomas Mell
www.validome.org
|
|
| 10.06.2007 14:54:21 |
|
Alexs
Mitglied
Registriert: 10.06.2007
Beiträge: 4
|
|
HTMELL schrieb:
Hi, das kann ich so nicht beantworten, da es vom Dokumententyp und dem Kontext in dem sich das "&" befindet abhängig ist. Etwas Code oder eine URL wäre Hilfreich. |
Hallo,
Vermutlich ist das gemeint:
Code:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<title>Test</title>
</head>
<body>
<h1>Hänsel & Gretel</h1>
</body>
</html> |
Der Fehler-Output:
Fehler: In der Entity-Referenz, muss nach '&' unmittelbar der Name der Entity folgen. Fehlerstelle: <h1>Hänsel & Gretel</h1> |
Unerklärlich ist dieser Output wenn das Ampersand drinnen ist:
Fehler: XML-Documente müssen innerhalb der gleichen Entity beginnen und enden. Fehlerstelle: </html> |
Beitrag geändert von Alexs (10.06.2007 18:37:19)
|
|
| 10.06.2007 18:31:55 |
|
HTMELL
Administrator
Registriert: 11.05.2006
Beiträge: 544
|
|
Hi, bei mir wird im ersten Beispiel das "ä" als ungültiges utf-8 Zeichen gemeldet (was richtig ist). Läst man das "ä" weg, wird der Fehler mit dem "&" gemeldet. Im zweiten Beispiel wird mir mit einen & ein valides Dokument gemeldet. Hast Du evt. ein Fehler beim Test gemacht ?
_______________________________________ mfg Thomas Mell
www.validome.org
|
|
| 10.06.2007 22:52:12 |
|
Alexs
Mitglied
Registriert: 10.06.2007
Beiträge: 4
|
|
HTMELL schrieb:
Hi, bei mir wird im ersten Beispiel das "ä" als ungültiges utf-8 Zeichen gemeldet (was richtig ist). |
Wieso sollte ein Umlaut falsch sein, wenn das Dokument utf-8 verwendet?
Mir ist aber schon klar, dass das Ampersand entsprechend maskiert sein muss. Nur der 2. Fehler gemeldete Fehler ist mir ein Rätsel, auch wenn man stattdessen '&' verwendet, ist der Hinweis vom 2. Fehler sehr kryptisch.
(Die Links wurden wieder entfernt)
MfG Alexs
Edit¹: Warum funktioniert nicht der BBCode für URLs? BBCode ist ein.
Edit²: Danke für die Info.
Beitrag geändert von Alexs (11.06.2007 16:38:50)
|
|
| 11.06.2007 14:07:43 |
|
HTMELL
Administrator
Registriert: 11.05.2006
Beiträge: 544
|
|
Hi,
| Wieso sollte ein Umlaut falsch sein, wenn das Dokument utf-8 verwendet? | Ich hatte Dein Codebeispiel per Copy&Paste als Dokument gespeichert und dann validiert. Da dadurch das "ä" in ein utf-8 Dokument gelandet ist, stellt dies natürlich einen Fehler dar - ein "ä" lautet in utf-8 "ä" und besteht aus 2 Bytes.
Die kyptische Fehlermeldung stammt vom verwendeten XML-Parser. Da ein "&" ein Entity einleitet, denkt der Parser, das alles was danach folgt, zu diesen Entity gehört und "verschluckt" auch das "</html>". Deshalb meldet er dann den 2. Fehler, welches das fehlende schliessende Rootelement bemängelt. Zugegeben, die Meldung ist absolut unbrauchbar und unverständlich (im übrigen Sinnlos). Man kann dem Parser leider nur sagen das er nach dem ersten Fehler abbrechen soll oder nicht (momentan nicht). Das hätte aber wieder den Nachteil das andere Folgefehler (z.b. 2 "&" im Dokument) nicht gemeldet werden - wie man es macht, es ist immer falsch ;-)
| Warum funktioniert nicht der BBCode für URLs? BBCode ist ein. | Damit wir nicht zum Spamen mißbraucht werden.
_______________________________________ mfg Thomas Mell
www.validome.org
|
|
| 11.06.2007 16:24:38 |
|
Wechsel zu
Die letzten Beiträge aus diesen Forum
|
|