Kathrin: Probleme mit der Darstellung von Kodierungen

Hallo,

ich möchte die Kodierung ★ im Internet Explorer anzeigen. Mozilla macht das ja ohne Probleme, aber möchte, dass es auch im Internet Explorer geht.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
<html>  
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>Test</title>  
</head>  
<body style="font-family:Lucida Sans Unicode;"><p>&#x2605;&#x21d2;  
</p></body>  
</html>

Die 2.Kodierung &#x21d2; wird als Pfeil dargestellt, aber &#x2605; wird im Internet Explorer nicht als schwarzer Stern dargestellt. Was mache ich falsch?

Vielen Dank im Voraus für eure Bemühungen.
Viele Grüße
Kathrin

  1. Die 2.Kodierung &#x21d2; wird als Pfeil dargestellt, aber &#x2605; wird im Internet Explorer nicht als schwarzer Stern dargestellt. Was mache ich falsch?

    Die falsche Schriftart verwenden - U+2605 BLACK STAR ist nicht in jeder Schriftart enthalten - schau dir deine gewählte Schriftart einfach mal mit einer entsprechenden Software an - Fontlab Studio ist empfehlenswert - ob der Codepoint überhaupt drin ist.

    "Andere Browser" verwenden, wenn ein Zeichen in der gewählten Schrift nicht drin ist, einfach eine Fallback-Schrift - der Internet Explorer tut das teilweise nicht.

    Eine verbreitete Fallback-Schrift unter Windows ist 'Arial Unicode MS'.

    1. Wow - vielen lieben Dank für eure vielen hilfreichen Antworten *freu*

      Ich verwende apropos schon den Internet Explorer 8 und es ging trotzdem nicht, anscheinend verwendet er doch keine Fallback-Schrift oder nicht immer. Nachdem suit meinte, dass eine verbreitete Fallback-Schrift Arial Unicode MS ist, habe ich die mal bei uns eingebunden und jetzt werden alle Sonderzeichen, die vorher nicht gingen angezeigt. Echt super - viiiielen Dank

      Viele Grüße
      Kathrin

      1. Ich verwende apropos schon den Internet Explorer 8

        Was heisst "schon"? Du meinst "noch" - aktuell ist der Internet Explorer 9 :)

  2. hi,

    Die 2.Kodierung &#x21d2; wird als Pfeil dargestellt, aber &#x2605; wird im Internet Explorer nicht als schwarzer Stern dargestellt. Was mache ich falsch?

    Du möchtest ein GURMUKHI LETTER BHA als Numerische Zeichenreferenz &#x2605; darstellen. Dazu muss vor dem HTML ein entsprechender HTTP-Header

    Content-Type; charset=utf-8

    gesendet werden. Prüfe das mit Live HTTP Headers und korrigiere das entsprechend.

    Hotti

    1. Hi!

      Du möchtest ein GURMUKHI LETTER BHA als Numerische Zeichenreferenz &#x2605; darstellen.

      Nein, möchte sie nicht.

      Dazu muss vor dem HTML ein entsprechender HTTP-Header
      Content-Type; charset=utf-8
      gesendet werden.

      Nein, muss nicht, wenn sie NCRs verwendet.

      Lo!

    2. @@hotti:

      nuqneH

      Du möchtest ein GURMUKHI LETTER BHA als Numerische Zeichenreferenz &#x2605; darstellen. Dazu muss vor dem HTML ein entsprechender HTTP-Header

      Content-Type; charset=utf-8

      gesendet werden.

      Du erzählst Unsinn.

      Die Verwechslung von hexadezimalen und dezimalen numerischen Zeichenreferenzen ist dabei noch der kleinere.

      „Der Dokument-Zeichensatz oder Basis-Zeichensatz von XML und HTML (ab Version 4.0) ist das Universal Character Set (UCS) […] Das bedeutet nicht, dass alle HTML- und XML-Dokumente als Unicode codiert werden müssen […]“ [qa-doc-charset]

      Hast du immer noch nicht den Unterschied zwischen Zeichensatz und Zeichencodierung verstanden?

      Lass dir das bitte nochmal auf der Zunge zergehen: „Jedes Unicode-Zeichen lässt sich in XML oder (X)HTML durch ein Zeichen-Escape darstellen (maskieren); in diesem kommen dann ausschließlich ASCII-Zeichen vor. […] Escapes können nützlich sein, um Zeichen zu repräsentieren, die von der für das Dokument gewählten Zeichencodierung nicht unterstützt werden, z.B. um chinesische Zeichen in einem ISO-8859-1-codierten Dokument zu repräsentieren.“ [qa-escapes]

      (Aber natürlich gilt: „Man sollte sich zunächst aber fragen, warum man nicht die Zeichencodierung ändert und eine verwendet, die alle im Dokument vorkommenden Zeichen abdeckt (wie UTF-8).“ [ibid.])

      Qapla'

      --
      Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
      (Mark Twain)
      1. hi,

        „Der Dokument-Zeichensatz oder Basis-Zeichensatz von XML und HTML (ab Version 4.0) ...

        Meine Empfehlung bezieht sich nicht auf XML oder HTML sondern auf den HTTP-Header Content-Type. Dieser Header hat den Parameter "charset", das wird gerne außer acht gelassen.

        Der Bezug zu HTML ist dennoch gegeben, wer ein

        <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        notiert, sollte in jedem Fall auch den Parameter im HTTP-Header damit in Übereinstimmung bringen, also prüfen. Dabei ist es egal, ob Numerische Zeichenreferenzen weiter unten kommen und es ist auch egal ob diese Zeichenreferenzen dezimal oder hexadezimal notiert sind.

        Hotti

        --
        Scheißegal ist die Steigerung von egal.
        1. @@hotti:

          nuqneH

          Der Bezug zu HTML ist dennoch gegeben, wer ein

          <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

          notiert, sollte in jedem Fall auch den Parameter im HTTP-Header damit in Übereinstimmung bringen, also prüfen.

          Alles schön und gut. (cf. [qa-html-encoding-declarations], in Kürze auch dort auf deutsch)

          Aber das hat so ziemlich gar nichts damit zu tun, ob '&#x2605;' als Stern dargestellt wird oder nicht.

          Ob die Zeichencodierung richtig angegeben ist, ist fast irrelevant*, wenn ausschließlich ASCII-Zeichen im Quelltext stehen. Im Quelltext, wohlgemerkt. '&#x2605;' besteht ausschließlich aus ASCII-Zeichen: '&', '#', 'x', '2', '6', '0', '5', ';'.

          Qapla'

          * Es sei denn, es wird eine exotische Zeichencodierung verwendet, die im Bereich x0 bis x7F von ASCII abweicht.

          --
          Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
          (Mark Twain)
          1. hi,

            notiert, sollte in jedem Fall auch den Parameter im HTTP-Header damit in Übereinstimmung bringen, also prüfen.

            Alles schön und gut.

            Ich darf Dich verbessern: gewissenhaft, gründlich

            (cf. [qa-html-encoding-declarations], in Kürze auch dort auf deutsch)

            Das ist wirklich schön ;)

            Ob die Zeichencodierung richtig angegeben ist, ist fast irrelevant*, wenn ausschließlich ASCII-Zeichen im Quelltext stehen.

            Freilich. Freistil-Mode ...

            Sch??ne Gr????e,
            danke Dir!
            Hotti

            --
            Wer pisst, verliert! (Niki L., Platz 1024 im Freistil)
          2. Hallo,

            Ob die Zeichencodierung richtig angegeben ist, ist fast irrelevant*, wenn ausschließlich ASCII-Zeichen im Quelltext stehen.
            * Es sei denn, es wird eine exotische Zeichencodierung verwendet, die im Bereich x0 bis x7F von ASCII abweicht.

            gibt es denn solche, die in diesem Kontext überhaupt in Frage kommen könnten? EBCDIC? RAD50?
            Commodore hatte ja damals sogar dem VC20/C64 eine Obermenge von ASCII spendiert - nur dass sie witzigerweise Groß- und Kleinbuchstaben vertauscht haben.

            Ciao,
             Martin

            --
            Zwei Kumpels sitzen vor dem Computer. "Welche Suchmaschine benutzt du eigentlich meistens?" - "Prima Vera." - "Hmm, kenn' ich gar nicht." Dann geht die Tür auf: "Schatz ich habe deine Sonnenbrille wiedergefunden!" - "Prima, Vera!"
            Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
            1. Hi!

              Ob die Zeichencodierung richtig angegeben ist, ist fast irrelevant*, wenn ausschließlich ASCII-Zeichen im Quelltext stehen.
              * Es sei denn, es wird eine exotische Zeichencodierung verwendet, die im Bereich x0 bis x7F von ASCII abweicht.
              gibt es denn solche, die in diesem Kontext überhaupt in Frage kommen könnten?

              UTF-16, UTF-32.

              Lo!

            2. @@Der Martin:

              nuqneH

              gibt es denn solche, die in diesem Kontext überhaupt in Frage kommen könnten? EBCDIC?

              Ja, irgendwie sowas. Cf. [qa-choosing-encodings]

              Qapla'

              --
              Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
              (Mark Twain)
          3. hi Gunnar,

            Alles schön und gut. (cf. [qa-html-encoding-declarations], in Kürze auch dort auf deutsch)

            Deine Übersetzung ist _mehr_ als "schön und gut"! Btw., was Perl/CGI in Sachen UTF-8 betrifft, gibt es einen neuen Artikel von mir, interessant dürften die am Ende notierten Abschnitte sein.

            Schöne Grüße,
            Hotti

  3. @@Kathrin:

    nuqneH

    Die 2.Kodierung &#x21d2; wird als Pfeil dargestellt, aber &#x2605; wird im Internet Explorer nicht als schwarzer Stern dargestellt. Was mache ich falsch?

    Du vermutlich gar nichts. Wenn, dann der IE.

    Von welchem IE sprichst du eigentlich? Der 8er zeigt den Stern.

    Ältere IEs haben des öfteren Probleme, Schriftarten zu finden, die eine Glyphe für das betreffende Zeichen bereithält. Vielleicht hilft es, explizit eine Schriftart anzugeben? (Wingdings?)

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)
  4. Hi!

    ich möchte die Kodierung &#x2605; im Internet Explorer anzeigen.

    Der richtige Begriff wäre NCR, Numeric Character Referenz, Numerische Zeichenreferenz.

    Mozilla macht das ja ohne Probleme, aber möchte, dass es auch im Internet Explorer geht.

    Mozilla ist so clever, Glyphen (Darstellungsvorschrift für ein Zeichen) aus anderen Schriftarten zu nehmen, wenn die aktuell verwendete keins für das gewünschte Zeichen hat. Alte Internet Explorer sind das nicht.

    Was mache ich falsch?

    Du verwendest eine Schriftart, die nicht für alle Zeichen passende Glyphen enthält. Du verwendest keinen aktuellen Internet Explorer. Außerdem verwendest du NCRs statt gleich das richtige Zeichen zu notieren.

    Lo!