Konrad L. M. Rudolph: Schrift- und Boxbreitenangabe in 'em'

Moin,

ich habe (Verständnis-)Probleme mit der Größenangabe per 'em'. Ziel ist letztendlich, einen Text zu haben, der ungefähr 70 Zeichen pro Zeile lang ist (Blocksatz). Aber irgendwie scheint das anders zu laufen.

Folgendes Testdokument hat einen Block der Breite '10em' bei einer Schriftgröße von '1em'. Jetzt sollte der Block meiner Meinung nach von 10 'm' ausgefüllt sein, ist er aber nicht:

http://madrat.net/tmp/test-em.html

Wer kann mir das erklären/korrigieren?

lg, Konrad -

--
Der Genitiv ist des Dativs Tod
  1. Hallo,

    Jetzt sollte der Block meiner Meinung nach von 10 'm' ausgefüllt sein

    Nein, wieso?

    1em in der Breite oder Höhe ist *nicht* die Breite des Buchstabens »m« in der jeweiligen Schrift, sondern entspricht der Schriftgröße (font-size) des jeweiligen Elementes.

    http://de.selfhtml.org/css/formate/wertzuweisung.htm#numerische
    http://jendryschik.de/wsdev/einfuehrung/css/werte#relative-laengen

    Mathias

    --
    »No nations, no borders.«
    Visitenkarte · SELFHTML Weblog
  2. hi,

    Folgendes Testdokument hat einen Block der Breite '10em' bei einer Schriftgröße von '1em'. Jetzt sollte der Block meiner Meinung nach von 10 'm' ausgefüllt sein, ist er aber nicht:

    http://de.wikipedia.org/wiki/Em_(Schriftsatz)
    "Ein em ist definiert als die Breite des Großbuchstabens M in der dargestellten Schriftart, bzw. Schriftgröße."

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Moin,

      http://de.wikipedia.org/wiki/Em_(Schriftsatz)
      "Ein em ist definiert als die Breite des Großbuchstabens M in der dargestellten Schriftart, bzw. Schriftgröße."

      Gut, aber in diesem Fall müsste es doch wenigstens mit dem Großbuchstaben "M" klappen -- und das tut es leider genausowenig. Ist das Rendering hier vielleicht einfach nicht exakt?

      lg, Konrad -

      --
      Der Genitiv ist des Dativs Tod
    2. Hi,

      Folgendes Testdokument hat einen Block der Breite '10em' bei einer Schriftgröße von '1em'. Jetzt sollte der Block meiner Meinung nach von 10 'm' ausgefüllt sein, ist er aber nicht:

      http://de.wikipedia.org/wiki/Em_%28Schriftsatz%29
      "Ein em ist definiert als die Breite des Großbuchstabens M in der dargestellten Schriftart, bzw. Schriftgröße."

      Nett, aber vollkommen irrelevant, weil:
      http://www.w3.org/TR/CSS21/syndata.html#absrel-units

      em: the 'font-size' of the relevant font

      CSS hat also eine andere Definition als das, was in der Wikipedia steht.
      Und für CSS ist immer noch wedrei, nicht wiki ausschlaggebend.

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      Schreinerei Waechter
      O o ostern ...
      Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      1. Moin,

        Nett, aber vollkommen irrelevant, weil:
        http://www.w3.org/TR/CSS21/syndata.html#absrel-units

        em: the 'font-size' of the relevant font

        CSS hat also eine andere Definition als das, was in der Wikipedia steht.
        Und für CSS ist immer noch wedrei, nicht wiki ausschlaggebend.

        Hm nun gut, es entspricht der Schriftgröße, aber das sagt immer nochts darüber aus, was als Bezugspunkt gewählt wird. So wie ich das verstanden habe, orientiert es sich trotzdem an einer Quad-Breite, was ja dasselbe wäre wie die "M"-Breite.

        Aber der Link auf die Wikipedia hat geholfen, da dort auf ein Dokument verwiesen wurde, welches 30 bis 35 em als Absatzbreite vorschlug, und das sieht tatsächlich praktikabel aus.

        Daher Danke.

        lg, Konrad -

        --
        Der Genitiv ist des Dativs Tod
        1. Hi,

          Hm nun gut, es entspricht der Schriftgröße, aber das sagt immer nochts darüber aus, was als Bezugspunkt gewählt wird. So wie ich das verstanden habe, orientiert es sich trotzdem an einer Quad-Breite, was ja dasselbe wäre wie die "M"-Breite.

          Eben nicht! Auch nicht an der Höhe des "M", sondern an der Höhe der font-size. Das W3C war hier im Gegensatz zu ex weitsichtig genug zu berücksichtigen, dass es auch Schriften gibt, die gar kein "M" enthalten...

          freundliche Grüße
          Ingo

    3. Hallo,

      http://de.wikipedia.org/wiki/Em_(Schriftsatz)
      "Ein em ist definiert als die Breite des Großbuchstabens M in der dargestellten Schriftart, bzw. Schriftgröße."

      Nö, sonst wäre em ja genauso Schriftarten-abhängig wie ex.

      mfg. Daniel

  3. Hallo,

    Folgendes Testdokument hat einen Block der Breite '10em' bei einer Schriftgröße von '1em'. Jetzt sollte der Block meiner Meinung nach von 10 'm' ausgefüllt sein, ist er aber nicht:

    http://madrat.net/tmp/test-em.html

    Wer kann mir das erklären/korrigieren?

    Niemand.
    Alles was meine Vorgänger gesagt haben ist nett, aber trotzdem irrelevant, weil die Browser machen wis sie wollen:

    Im folgenden Test zeig allein Opera eine Veränderung beim zu- bzw. weglassen der Definitionen für body.

    Grüße
    Thomas

    --------
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">

    <html>
        <head>
            <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/>
            <title>Test</title>
            <style type="text/css">
      /*body {
       font-size: 1em;
       font-family:sans-serif;
      }*/
       .test {
                    font-size: 1em;
                    width: 10em;
                    border: 1px solid red;
        margin-bottom:1em;
       }
                #test1 { font-family:Times; }
       #test2 { font-family:Arial; }
       #test3 { font-family:cursive  ; }
       #test4 { font-family:Helvetica; }
       #test5 { font-family:monospace; }
            </style>
        </head>

    <body>
            <div id="test1" class="test">MMMMMMMMMM</div>
      <div id="test2" class="test">MMMMMMMMMM</div>
      <div id="test3" class="test">MMMMMMMMMM</div>
      <div id="test4" class="test">MMMMMMMMMM</div>
      <div id="test5" class="test">MMMMMMMMMM</div>
        </body>
    </html>
    ------------