webstarg: Body && CSS

Hallo!

Welche Form ist korrekt?

(...)
</head>
<body id="formatierung1">
</body>
</html>

-------------------------

(...)
</head>
<body div id="formatierung1">
</body>
</html>

Zu funktionieren scheinen beide; welche ist aber korrekt und welche wird nur kulanterweise angenommen?

mfg
webstarg

  1. Hallo!

    Welche Form ist korrekt?

    (...)
    </head>
    <body id="formatierung1">
    </body>
    </html>

    ist korrekt!


    (...)
    </head>
    <body div id="formatierung1">
    </body>
    </html>

    ist falsch wie kommst du auf so einen Schwachsinn. Div hat doch nichts mit dem Body zu tun?

    Div ist ein http://de.selfhtml.org/navigation/suche/index.htm?Suchanfrage=BlockelementeBlockelement[/link]

    mfg

    Phil

  2. Hallo!

    Welche Form ist korrekt?

    Korrekt ist die erste, allerdings würde ich dem body-tag anstatt id, mit class eine Formatierung zuweisen.

    Lg thomas

    1. Hi,

      allerdings würde ich dem body-tag anstatt id, mit class eine Formatierung zuweisen.

      ähm, Du solltest dem <body>-Element lieber per CSS eine Formatierung zuweisen. Ob ein Element - egal welches - eine ID oder eine Klasse bekommt, hat *nichts* mit Formatierungen zu tun.

      Cheatah

      --
      X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
    2. Tach,

      allerdings würde ich dem body-tag anstatt id, mit class eine Formatierung zuweisen.

      warum das denn? Das body-Element ist so oder so eindeutig, da es in einem Dokument nur ein body geben kann. Also reicht es, wenn man es im CSS über den Elementnamen selektiert.
      Aber wenn man schon dasselbe CSS für mehrere Dokumente verwenden und das body-Element verschiedener Dokumente unterscheiden will, dann ist wegen der Eindeutigkeit eine ID eher angebracht als eine Klasse.

      Ciao,
       Martin

      --
      Ja, ja... E.T. wusste schon, warum er wieder nach Hause wollte.
      1. hi,

        Aber wenn man schon dasselbe CSS für mehrere Dokumente verwenden und das body-Element verschiedener Dokumente unterscheiden will, dann ist wegen der Eindeutigkeit eine ID eher angebracht als eine Klasse.

        Umgekehrt kann's genauso sein, dass ich in mehreren Dokumenten bodys gleicher Art habe, für die ich dann eine Klasse verwende.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
      2. warum das denn? Das body-Element ist so oder so eindeutig, da es in einem Dokument nur ein body geben kann. Also reicht es, wenn man es im CSS über den Elementnamen selektiert.

        Nun es kann aber auch sein, dass man auf mehreren Seiten, die dem gleichen Aufbau folgen, beispielsweise einen anderen Hintergrund haben möchte. Ich würde das dann mit Klassen lösen, aber jeder wie es ihm lieber ist.

        Lg Thomas

        1. Hallo.

          Nun es kann aber auch sein, dass man auf mehreren Seiten, die dem gleichen Aufbau folgen, beispielsweise einen anderen Hintergrund haben möchte. Ich würde das dann mit Klassen lösen, aber jeder wie es ihm lieber ist.

          Man kann ja durchaus beides machen, um eine Seite grundsätzlich zu einer bestimmten Gruppe gehören zu lassen, aber individuelle Unterschiede zu ermöglichen.
          MfG, at

  3. Hallo webstarg,

    <body id="formatierung1">

    Wozu braucht dein Body-Element eine ID? es gibt doch nur einen Body in deinem Dokument, will ich hoffen.

    Das kannst du über document.body ansprechen.

    <body div id="formatierung1">

    Das ist Quatsch, das Body-Element kennt kein Attribut "div".

    Gruß Gernot

    1. Hallo,

      <body div id="formatierung1">

      Das ist Quatsch, das Body-Element kennt kein Attribut "div".

      Zum Beispiel, wenn das Projekt mehr als eine Seite hat, der body auch mal anders formatiert werden soll, und diese Formatierungen zentral in einer css-Datei stehen.

      Eine class, wie von Thomas vorgeschlagen, würde ich nicht nehmen, denn dann greift Dein Argument: Pro Dokument nur ein body.

      Grüße
      Shepard

      1. Hallo Shepard,

        Das ist Quatsch, das Body-Element kennt kein Attribut "div".

        Zum Beispiel, wenn das Projekt mehr als eine Seite hat, der body auch mal anders formatiert werden soll, und diese Formatierungen zentral in einer css-Datei stehen.

        Da hast du freilich Recht, auch wenn du dich wahrscheinlich eher auf den ersten Teil meiner Aussage beziehst:

        Wozu braucht dein Body-Element eine ID? es gibt doch nur einen Body in deinem Dokument, will ich hoffen.

        um die CSS-Angaben zu z. B.:

          
        body {  
         background-color:pink;  
        }
        

        auf bestimmten Seiten des Gesamtprojekts zu überschreiben, ist

          
        #formatierung1 {  
         background-color:white;  
        }
        

        aufgrund höherer Spezifität durchaus hilfreich. Aber das funktioniert ebenso mit einer Klasse

          
        .formatierung1 {  
         background-color:white;  
        }
        

        Eine solche würde ich allerdings auch nur benutzen, wenn ich sie noch für andere Elemente als das BODY-Element verwenden wollte.

        Gruß Gernot

      2. Hello out there!

        Eine class, wie von Thomas vorgeschlagen, würde ich nicht nehmen, denn dann greift Dein Argument: Pro Dokument nur ein body.

        Wer sagt, dass Klassen nur vergeben werden dürfen, wenn mehrere Elemente pro Dokument dieser Klasse angehören?

        Im Beispiel mag es auf der Website solche Dokumente 'foo' und solche 'bar' geben. Das heißt, die Dokumente werden _klassifiziert_.

        Also <body class="foo"> bzw. <body class="bar">.

        See ya up the road,
        Gunnar

        --
        “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
        1. Hallo Gunnar,

          genau wie Gernot hast Du natürlich Recht, ich wollte auch nicht sagen, daß man hier keine Klasse nehmen _darf_.

          Für mich war das Hauptkriterium, wann eine Klasse, wann eine ID zu verwenden ist, eigentlich immer die Mehrfachverwendung (oder halt nicht) des zu formatierenden Elements in einem Dokument (wobei sich die Frage bei body so nicht stellt).

          Im Beispiel mag es auf der Website solche Dokumente 'foo' und solche 'bar' geben. Das heißt, die Dokumente werden _klassifiziert_.

          OK.. an diesen offensichtlichen Fall habe ich nicht gedacht. Hier könnte man zwar trotzdem mit ID arbeiten (gleiche body-ID in verschiedenen Dokumenten ist ja durchaus zulässig), aber vom Sinn her wäre dann eine Klasse tatsächlich angemessener.

          Shepard

          1. Hallo Shepard,

            Für mich war das Hauptkriterium, wann eine Klasse, wann eine ID zu verwenden ist, eigentlich immer die Mehrfachverwendung (oder halt nicht) des zu formatierenden Elements in einem Dokument (wobei sich die Frage bei body so nicht stellt).

            In manchen Fällen auch dort. Mit den derzeit laufenden Änderungen an SELFHTML aktuell wurden den body-Elementen Klassen verpasst, um Seitentypen besser ansprechen zu können.

            Beispiel: <body class="selfhtml-aktuell selfhtml-aktuell-inhaltsseite">

            (gleiche body-ID in verschiedenen Dokumenten ist ja durchaus zulässig)

            Aber nicht zwei IDs pro body, womit Tim ein gröberes Problem hat.

            Grüße
             Roland

      3. Hallo Shepard

        Zum Beispiel, wenn das Projekt mehr als eine Seite hat, der body auch mal anders formatiert werden soll, und diese Formatierungen zentral in einer css-Datei stehen.

        Nicht nur das!
        Auch, wenn andere Elemente auf einer bestimmten Seite des Projekts abweichend formatiert werden sollen.
        Über den Nachfahrenselektor kann dies dann erfolgen, ohne zusätzliche Klassen für diese Elemente verwenden zu müssen.

        Eine class, wie von Thomas vorgeschlagen, würde ich nicht nehmen, denn dann greift Dein Argument: Pro Dokument nur ein body.

        Das hängt davon ab, ob Seiten klassifiziert oder eine Seite identifiziert werden soll.
        Es ist auch durchaus möglich gleichzeitig beides zu verwenden.

        Auf Wiederlesen
        Detlef

        --
        - Wissen ist gut
        - Können ist besser
        - aber das Beste und Interessanteste ist der Weg dahin!
    2. Hallo,

      Das kannst du über document.body ansprechen.

      Wie soll das denn gehen *g*?

      document.body {}?

      mfg. Daniel

      1. Hallo,

        document.body {}?

        Nein. document.body ist Javascript. Eine id wird nicht nur für CSS benutzt, sondern spielt vor allem auch in Javascript eine große Rolle. Man denke hier nur mal an GetElementById() oder wie auch immer das heißt. body muss man in dieser Hinsicht aber keine ID geben, weil man ihn eben über document.body ansprechen kann.

        Gruss,
        OhneName

        1. Hallo,

          document.body {}?

          Nein. document.body ist Javascript.

          Schon, aber das Thema war ja eindeutig CSS!
          Wollte nur verhindern, dass der Fragesteller jetzt ein document.body in die CSS-Datei einfügt ;-)
          Ansonsten hast du natürlich Recht :-)

          mfg. Daniel

    3. Hi,

      Wozu braucht dein Body-Element eine ID? es gibt doch nur einen Body in deinem Dokument, will ich hoffen.

      Ist es dir noch nie passiert, daß Du in einem globalen, externen Stylesheet unterschiedliche BODYs unterschiedlich formatierst?

      Gruß, Cybaer

      --
      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
      1. Hallo Cybaer,

        Ist es dir noch nie passiert, daß Du in einem globalen, externen Stylesheet unterschiedliche BODYs unterschiedlich formatierst?

        Doch, z.B. unlängst bei den Bodys von funktionsleistenlosen Popups, die sich ausgerechnet der Auftraggeber eines "barrierefreien" Projekts nicht ausreden lassen wollte.

        Vielleicht ist es aus dieser Antwort nicht ganz klar geworden, dass auch ich dann einer ID gegenüber einer Klasse beim Body-Element den Vorzug geben würde, wenn ich nicht auch noch anderweitige Verwertung für diese Klasse hätte.

        Allerdings sah es für mich so aus, als ob der Originalposter sich gar nicht darüber im Klaren war, dass man beliebige Elemente und nicht nur DIVs mit Klassen und über den Elementselektor auch ohne Klasse formatieren kann.

        Gruß Gernot