Christian: Schriftart-Festlegung (CSS) für Tabelle

Guten morgen liebe Community,

eine kurze Frage: Mit Hilfe von CSS (separate Datei) habe ich festgelegt, dass eine bestimmte Schriftart für den gesamten Body gilt. Funktioniert, aber merwürdigerweise scheint das nur nicht für einen Tabelleninhalt zu gelten, da dort, obwohl die Tabelle natürlich im Body sich befindet, die Stadardschriftart benutzt wird!?! Weshalb das??? Klar, ich kann definieren, dass für alle Tabellen die gewünschte Font gelten soll, dass müsste doch aber nicht nötig sein...

Danke!
Christian aus Berlin

  1. Hallo Christian,

    Klar, ich kann definieren, dass für alle Tabellen die gewünschte Font gelten soll, dass müsste doch aber nicht nötig sein...

    was passiert, wenn du die Schriftfamilie für html statt body definierst?

    Mit freundlichen Grüßen,
    André

    1. Hi André,

      also statt

      ***
      body {
       font-family:arial,sans-serif;
       font-size:12px;
       font-weight:bold
      }
      ***

      so

      html {
       font-family:arial,sans-serif;
       font-size:12px;
       font-weight:bold
      }

      ??? Warum geht das aber mit der Body-Deklaration nicht???

      1. Hallo Christian,

        html {
        font-family:arial,sans-serif;
        font-size:12px;
        font-weight:bold
        }

        ??? Warum geht das aber mit der Body-Deklaration nicht???

        ich weiß nicht, ob es bei 'html' greift. Es wäre aber einen Versuch wert.

        Mit freundlichen Grüßen,
        André

      2. Hallo,

        eine kurze Frage: Mit Hilfe von CSS (separate Datei) habe ich festgelegt, dass eine bestimmte Schriftart für den gesamten Body gilt. Funktioniert, aber merwürdigerweise scheint das nur nicht für einen Tabelleninhalt zu gelten, da dort, obwohl die Tabelle natürlich im Body sich befindet, die Stadardschriftart benutzt wird!?!

        body {
        font-family:arial,sans-serif;
        font-size:12px;
        font-weight:bold
        }

        Deine Behauptung von oben trifft für die Schriftart gar nicht zu. Bzw. welcher Browser vererbt die Schriftart von BODY nicht auf TD?

        Für die Schriftgröße und die Schriftdicke trifft sie nur zu, wenn der Browser im Quirks-Mode parst, also, wenn Du keinen oder einen unvollständigen DOCTYPE angegeben hast.

        Grundsätzlich ist aber immer anzuraten, das Aussehen aller Elemente im CSS anzugeben, deren Aussehen Dir wichtig ist. Der Unterschied besteht nämlich darin, dass sich die Einstellung für BODY direkt nur auf Text auswirkt, welcher auch direkt im Body steht, also nicht in einem weiteren Element, wie Hx, P, LI, ..., und natürlich TD. Das ist ohnehin nur in transitional-HTML möglich und die Browser haben für fast alle Elemente Standard-Styles, die greifen, wenn Du nichts explizit angibst.

        Dass man Selectoren aufzählen kann ist Dir bekannt?
        Bsp:

        body, p, td {
          font-family:arial,sans-serif;
          font-size:12px;
          font-weight:bold
        }

        viele Grüße

        Axel

        1. Hallo Axel,

          danke für die kompetente Antwort! ;-)
          Liegt wohl daran, dass ich nicht "DOCTYPE" im Quellcode zu stehen habe... Was ist das genau? Sehr wichtig?
          Werde nun definieren, dass die Tabelle die Schriftart bekommen soll... :-)

          Christian

          1. Hallo Christian.

            Liegt wohl daran, dass ich nicht "DOCTYPE" im Quellcode zu stehen habe... Was ist das genau? Sehr wichtig?

            Absolut.
            Der DOCTYPE gehört zum Grundgerüst eines gültigen HTML-Dokumentes.

            Einen schönen Dienstag noch.

            Gruß, Ashura

            --
            Selfcode: sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
            30 Days to becoming an Opera8 Lover -- Keyboard Shortcuts
            Meine Browser: Opera 8.50 | Firefox 1.0.7 | Lynx 2.8.5 | Konqueror 3.3.2 | Netscape 4.7 | IE 6.0
            Use OpenOffice.org
        2. Hi,

          Der Unterschied besteht nämlich darin, dass sich die Einstellung für BODY direkt nur auf Text auswirkt, welcher auch direkt im Body steht, also nicht in einem weiteren Element, wie Hx, P, LI, ..., und natürlich TD.

          Das würde ich aber schon differenzierter sehen. Angaben zu color werden auf alle Elemente vererbt, Angaben zu font-family auf die meisten und zu font-weight auch noch auf einige. Ich halte nicht soviel von redundanten Angaben, die bei einer Designänderung dann auch noch alle berücksichtigt werden müssen: soviel wie nötig, aber sowenig wie möglich.

          freundliche Grüße
          Ingo

          1. Hallo,

            Der Unterschied besteht nämlich darin, dass sich die Einstellung für BODY direkt nur auf Text auswirkt, welcher auch direkt im Body steht, also nicht in einem weiteren Element, wie Hx, P, LI, ..., und natürlich TD.
            Das würde ich aber schon differenzierter sehen. Angaben zu color werden auf alle Elemente vererbt, Angaben zu font-family auf die meisten und zu font-weight auch noch auf einige. Ich halte nicht soviel von redundanten Angaben, die bei einer Designänderung dann auch noch alle berücksichtigt werden müssen: soviel wie nötig, aber sowenig wie möglich.

            Ja, das meinte ich mit _direkt_ auswirken im Gegensatz zur von Dir beschriebenen Vererbung. Man kann nun folgendermaßen vorgehen:
            Dokumentweite Eigenschaften, welche sich vererben lassen, werden dem möglichst umschließendsten Element zugewiesen, bspw. BODY, und man prüft inwieweit sich die Browser an die Regeln der Vererbung halten und bessert ggf. nach. Der Aufwand ist mir zu groß und die Ergebnisse sind mir zu unsicher.

            Meine Vorgehenweise ist diese:
            Dokumentweite Eigenschaften werden dem möglichst umschließendsten Element, bspw. BODY _und_, wenn es sich um Textformatierungen handelt, allen im Dokument benutzten Textcontainern (P, LI, DD, DT, TH, TD ...) per Aufzählung der Selectoren in _einer_ CSS-Zuweisung zugewiesen. Diese _müssen_ dann, unabhängig von der Vererbung, vom Browser beachtet werden. Natürlich nur, wenn er so eingestellt ist, und nicht andere !important-Styles greifen, was aber für Methode 1 auch gilt.

            viele Grüße

            Axel

            1. Hi,

              Dokumentweite Eigenschaften, welche sich vererben lassen, werden dem möglichst umschließendsten Element zugewiesen, bspw. BODY, und man prüft inwieweit sich die Browser an die Regeln der Vererbung halten und bessert ggf. nach. Der Aufwand ist mir zu groß und die Ergebnisse sind mir zu unsicher.

              mir nicht. Im Laufe der Zeit habe ich ein Gespür dafür entwickelt, welche Eigenschaften problemlos vererbt werden und brauche auch nicht mehr nachzubessern.

              freundliche Grüße
              Ingo