Nicole: Styleangabe im Body

Hallo erst mal ;-),

ich finde im ganzen Internet keine brauchbare Aussage
zum Thema CSS einbinden im Bodybereich.

also im Head ist klar:

<style type="text/css">
.abc{size:10px;.....}
</style>

Im Body auch:

<h1 style="size:30px;">Hallo erst mal</h1>

Aber:

Darf ich auch im Bodybereich  <style type="text/css"> verwenden ?

Funktionieren tut es, aber ist es erlaubt und
somit langfristig nutzbar ?

Die Gründe warum ich das so nutzen möchte, liegen auf der Hand:
Ich schreibe viel modular und diese Module oder Tools
sollen natürlich in der entsprechenden Seite angepasst erscheinen.

Jetzt ist es allerdings mühselig und quelltextaufblähend
die css in den einzelnen tags (bsp. <h1 style="size:30px;...)
immer wieder zu wiederholen.

Längeres Beispiel zu Verdeutlichung:

  • So soll es angeblich sein

<html>
<head>
<title>css test</title>
<style type="text/css">
.i{background-color:#514F2F;width:80%;padding:0px;}
</style>
</head>
<body>

<!-- modul 1 --->
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>
<h5 style="background-color:navy;size:20px;">test</h5>

</body>
<html>

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

  • so möchte ich es

  • So soll es angeblich sein

<html>
<head>
<title>css test</title>

<style type="text/css">
.i{background-color:#514F2F;width:80%;padding:0px;}
</style>

</head>
<body>

<style type="text/css">
#abc{background-color:navy;size:20px;}
<style>

<style type="text/css" src="style.css"></style>

<!-- modul 1 --->
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>
<h5 id="abc">test</h5>

</body>
<html>

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

Also nochmal die Frage : Ist das erlaubt ?
Falls Ja , ebenso ein src verweis auf eine css datei ebenfalls
im Bodybereich ?

Beim Antwortsuchen auf diese Fragen sehe ich immer nur,
"es soll im headbereich sein" aber nie dass es im
bodybereich nicht erlaubt sei.

Gruss
Nikki

  1. Hallo Nicole.

    Darf ich auch im Bodybereich  <style type="text/css"> verwenden ?

    Nein. (Offiziell)

    Einen schönen Dienstag noch.

    Gruß, Ash*feel free*ura

    --
    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
    1. Hallo Ash,

      Nein. (Offiziell)

      Schade ;-(

      Finde in deinem Link allerdings kein Begründung.

      Gruss Nikki

      1. Hallo Nicole.

        Hallo Ash,

        Verkohlen willst du mich also?

        Nein. (Offiziell)

        Finde in deinem Link allerdings kein Begründung.

        Die Begründung lautet schlicht und ergreifend, dass dies in keiner der derzeitig aktuellen DTDs so definiert (und damit erlaubt) ist.

        Einen schönen Dienstag noch.

        Gruß, Ash*feel free*ura

        --
        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
        1. Hallo Ashura,

          Finde in deinem Link allerdings kein Begründung.

          Die Begründung lautet schlicht und ergreifend, dass dies in keiner der derzeitig aktuellen DTDs so definiert (und damit erlaubt) ist.

          Da steht das es im Head sein soll....
          OK gut, aber warum , wer denkt sich sowas ohne logische begründung aus.

          Wenn ich das mal mit Javascript vergleiche:
          sollte auch im Head sein muss aber nicht:
          Begründung: Im Head bereits geladen bevor seite erscheint.

          Also warum nicht genauso mit css datei verfahren ?
          Also empfohlen im Head aber auch möglich im Body....

          Zumal es ja funktioniert sowohl in IE als auch in firefox.

          Aber ich sehe schon eine logische Begründung werde ich kaum
          finden: verboten ist verboten ;-(

          Danke fürs suchen
          Nikki

          1. Hallo Nicole.

            Da steht das es im Head sein soll....
            OK gut, aber warum , wer denkt sich sowas ohne logische begründung aus.

            Das W3C.

            Wenn ich das mal mit Javascript vergleiche:
            sollte auch im Head sein muss aber nicht:
            Begründung: Im Head bereits geladen bevor seite erscheint.

            Was hat das eine mit dem anderen zu tun? Man kann fast völlig frei festlegen, wann ein Script ausgeführt werden soll, ungeachtet dessen, wo sich der script-Block befindet.

            Also warum nicht genauso mit css datei verfahren ?
            Also empfohlen im Head aber auch möglich im Body....

            Ich sehe den Einsatz von JavaScript-Blöcken im body-Element als unsauber an; das Selbe gilt für style-Blöcke in diesem.

            Im Kopf sollten meiner Meinung nach Metainformationen, Stildefinitionen und den Inhalt weiter aufbereitende Scripte hinterlegt werden.

            Im Körper schließlich sollten einzig und allein die nackten Inhalte liegen, welche auch so ohne Kopfinformationen nutzbar sind.

            Aber ich sehe schon eine logische Begründung werde ich kaum
            finden: verboten ist verboten ;-(

            „must“ != „should“.

            Einen schönen Dienstag noch.

            Gruß, Ash*feel free*ura

            --
            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
            1. Hallo Ashura

              Ich sehe den Einsatz von JavaScript-Blöcken im body-Element als unsauber an; das Selbe gilt für style-Blöcke in diesem.

              Findest du Tonnen an zusätzlichen Styleangaben und
              dadurch schier endlos lange Zeilen sauberer ?

              also das besser....
              ------------------------------------
              <p style="text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;">Die Zeile ist viel zu lang</p>
              <p style="text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;">Die Zeile ist viel zu lang</p>
              <p style="text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;">Die Zeile ist viel zu lang</p>
              <p style="text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;">Die Zeile ist viel zu lang</p>
              <p style="text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;">Die Zeile ist viel zu lang</p>

              oder das ?
              -----------------------------------
              <style type="text/css">
              p{text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;}
              </style>

              <p>schöne Zeilen</p>
              <p>schöne Zeilen</p>
              <p>schöne Zeilen</p>
              <p>schöne Zeilen</p>
              <p>schöne Zeilen</p>

              Im Kopf sollten meiner Meinung nach Metainformationen, Stildefinitionen und den Inhalt weiter aufbereitende Scripte hinterlegt werden.

              Man kommt aber nicht immer an den Kopfbereich ran:
              Auktionsseiten, Kleinanzeigen, etc......

              Im Körper schließlich sollten einzig und allein die nackten Inhalte liegen, welche auch so ohne Kopfinformationen nutzbar sind.

              Nutzbar schon aber soll ja auch gut aussehen.

              Gruss
              Nikki

              ps. Ich habe gerade eine neue Frage gepostet die ein nur Beispiel
              dafür ist , warum man es erlauben sollte.

              1. Hallo Nicole.

                Findest du Tonnen an zusätzlichen Styleangaben und
                dadurch schier endlos lange Zeilen sauberer ?

                Nein, keineswegs. Wie ich bereits schrieb, versuche ich nach Möglichkeit im body-Element allein den nackten, strukturierten Code abzulegen. Keinerlei Style-Angaben.

                also das besser....

                <p style="text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;">Die Zeile ist viel zu lang</p>
                [...]

                Um Himmels Willen, bloß nicht.

                oder das ?

                <style type="text/css">
                p{text-align:center;background-color:#000000;color:#ffffff;font-family:arial, helvetica,sans serif;font-weight:bold;}
                </style>

                <p>schöne Zeilen</p>
                [...]

                Natürlich diese Variante, wobei ein externes Stylesheet eine noch bessere Lösung wäre.

                Man kommt aber nicht immer an den Kopfbereich ran:
                Auktionsseiten, Kleinanzeigen, etc......

                Sofern JS zur Verfügung steht ist vieles machbar.
                Ansonsten haben sich die Anbieter möglicherweise schon etwas dabei gedacht, dass sie den Kopfbereich nicht editierbar gemacht haben.

                ps. Ich habe gerade eine neue Frage gepostet die ein nur Beispiel
                dafür ist , warum man es erlauben sollte.

                Welche inhaltlich wie gesagt noch zu diesem Thread hier passt.

                Einen schönen Dienstag noch.

                Gruß, Ash*feel free*ura

                --
                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. Hallo Ashura,

              Ich sehe den Einsatz von JavaScript-Blöcken im body-Element als unsauber an ...

              keineswegs! Dynamische Teile des HTML-Dokuments mit document.write() auszugeben, finde ich vollkommen in Ordnung - und dazu *muss* die JS-Anweisung mitten im body stehen, auch wenn sie sich formal auf einen Funktionsaufruf reduzieren lässt und die aufgerufene Funktion wiederum im head steht. Das halte ich aber für weniger übersichtlich als eine Handvoll JS-Zeilen mit document.write() in einem Script-Abschnitt im body.

              das Selbe gilt für style-Blöcke in diesem.

              und "dasselbe" wird nach neuer wie alter Rechtschreibung als ein Wort zusammengeschrieben. Das gilt übrigens auch für "einmal". Ist mir schon mehrfach aufgefallen, dass du das in zwei Worten schreibst. Das tut man eigentlich nur, wenn man der Zahl Eins ein besonderes Gewicht verleihen will, wie z.B. "Ich war erst ein Mal in Irland". ;-)

              Im Kopf sollten meiner Meinung nach Metainformationen, Stildefinitionen und den Inhalt weiter aufbereitende Scripte hinterlegt werden.

              Hmmm, ja... und trotzdem: Wenn ich mit JS "am Dokument friemeln" will, während es vom Browser gerendert wird, dann muss ich es zwangsläufig im body unterbringen. Wenn ich ein Script im head plaziere, brauche ich doch einen Eventhandler, mit dem ich dieses Script aufrufen kann. Das könnte onload sein, aber im Vergleich zum Script *direkt* im body gibt das ein unschönes Flackern oder einen unruhigen Bildaufbau, weil der Browser zuerst den statischen Dokumentinhalt ohne JS rendert, bevor endlich onload zündet und das aufgerufene Script den DOM-Elementbaum nachträglich verändern kann.

              So long,

              Martin

              1. Hallo Martin.

                Ich sehe den Einsatz von JavaScript-Blöcken im body-Element als unsauber an ...

                keineswegs! Dynamische Teile des HTML-Dokuments mit document.write() auszugeben, finde ich vollkommen in Ordnung

                Gut, ich arbeite hauptsächlich mit dem node-Objekt und biete innerHTML als Alternative.

                • und dazu *muss* die JS-Anweisung mitten im body stehen, auch wenn sie sich formal auf einen Funktionsaufruf reduzieren lässt und die aufgerufene Funktion wiederum im head steht. Das halte ich aber für weniger übersichtlich als eine Handvoll JS-Zeilen mit document.write() in einem Script-Abschnitt im body.

                Subjektiv, kann also jeder machen, wie er möchte.

                und "dasselbe" wird nach neuer wie alter Rechtschreibung als ein Wort zusammengeschrieben. Das gilt übrigens auch für "einmal". Ist mir schon mehrfach aufgefallen, dass du das in zwei Worten schreibst. Das tut man eigentlich nur, wenn man der Zahl Eins ein besonderes Gewicht verleihen will, wie z.B. "Ich war erst ein Mal in Irland". ;-)

                *grummel* Zu einem großen Teil war die Rechtschreibreform logisch und sinnvoll. Hierbei aber z. B. leider nicht...
                Danke für den Hinweis.

                [...] weil der Browser zuerst den statischen Dokumentinhalt ohne JS rendert, bevor endlich onload zündet und das aufgerufene Script den DOM-Elementbaum nachträglich verändern kann.

                Sicher, beide Methoden haben ihre Vorteile. Wie gesagt; ich persönlich habe mir dieserart Einsatz von JS abgewöhnt und nutze es nur noch, wenn ich keine Wahl habe.

                Einen schönen Dienstag noch.

                Gruß, Ash*feel free*ura

                --
                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. Moin!

            Zumal es ja funktioniert sowohl in IE als auch in firefox.

            Aber nicht in älteren Versionen von Opera - und die sind durchaus noch verbreitet. In meiner noch installierten 6er geht es nicht, ich hatte das aber auch schon auf meinem anderen Rechner, auf dem sich jetzt 8.50 befindet (dort gehts), mit einer früheren Version (8.0x oder 7.5x) festgestellt.

            Was wieder mal beweist, dass das Argument "funktioniert doch in Browser X" keinerlei Relevanz für Browser Y hat.

            - Sven Rautenberg

            --
            My sssignature, my preciousssss!
  2. Lieber Nicole,

    Ich schreibe viel modular und diese Module oder Tools
    sollen natürlich in der entsprechenden Seite angepasst erscheinen.

    warum kannst Du keine externe CSS-Datei anlegen, in der Du für jedes "Modul" einen eigenen Abschnitt hast, in welchem die Style-Angaben stehen?

    Es mag anfangs komisch erscheinen, warum für jede Unterseite immer die kompletten Styles einer Seite geladen werden müssen. Aber wenn man sich überlegt, dass eben jene externe CSS-Datei nur ein einziges Mal übertragen zu werden braucht, dann spart das wiederum Code und Bandbreite!

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    1. Hallo Felix,

      bist du -genau wie ich- so früh am Morgen noch nicht richtig wach?
      Oder kann dein User-Script nicht zwischen Frauen- und Männernamen unterscheiden?  *fg*

      Lieber Nicole,

      Das liest sich doch arg merkwürdig... ;-)

      Schönen Tag noch,

      Martin

      1. Hi,

        bist du -genau wie ich- so früh am Morgen noch nicht richtig wach?
        Oder kann dein User-Script nicht zwischen Frauen- und Männernamen unterscheiden?  *fg*

        Frauen wollen doch immer die Gleichberechtigung ;-)

        cu,
        Andreas

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

          bist du -genau wie ich- so früh am Morgen noch nicht richtig wach?

          das trifft zu 100% zu.

          Oder kann dein User-Script nicht zwischen Frauen- und Männernamen unterscheiden?  *fg*

          Das trifft zu 100% zu.

          Frauen wollen doch immer die Gleichberechtigung ;-)

          Das trifft nicht zu 100% zu, und das auch nicht immer.

          Ein wunderschönes Morgenwetter haben wir hier in Ellwangen!! Klare (zum Atmen) nebelige (zum nix-sehen) Herbstluft, die von der Sonne langsam ent-nebelt und erwärmt wird - wunderbar! Wie sieht es bei Euch aus?

          Liebe Grüße aus Ellwangen,

          Felix Riesterer.

    2. Hallo Felix,

      warum kannst Du keine externe CSS-Datei anlegen, in der Du für jedes "Modul" einen eigenen Abschnitt hast, in welchem die Style-Angaben stehen?

      ob extern oder intern, beides müsste im Headbereich,
      aber genau da ist das Problem:

      Beispiel:

      Ich schreibe ein Tool (z.b.währungsumrechner) und andere
      wollen dieses Tool einsetzen zb. bei Ebay. Dann kommen die gar nicht
      mehr an den Headbereich dran. Somit wäre es schön wenn ich
      dass im  Bodybereich angeben kann ohne in jedem einzelnen Tag<>.

      Gruss
      Nikki

  3. Hi Nicole!

    Neben den anderen Antworten solltest du beachten, dass eine ID einzigartig ist, ergo nur einmal vorkommen darf.

    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>
    <h5 id="abc">test</h5>

    Das ist also nicht erlaubt.

    MfG H☼psel

    --
    "It's amazing I won. I was running against peace, prosperity, and incumbency."
    George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
    Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)
    1. Hallo Hopsel,
      schon klar abc steht ja auch nur als platzhalter da.
      Hat aber auch nichts mit meiner Frage zu tun.

      Gruss
      Nikki

      Neben den anderen Antworten solltest du beachten, dass eine ID einzigartig ist, ergo nur einmal vorkommen darf.

      <h5 id="abc">test</h5>
      <h5 id="abc">test</h5>

      Das ist also nicht erlaubt.

  4. Hallo Nicole.

    Nun also noch ein Mal zu deinem Problem.
    Da du offensichtlich JS-Zugriff auf die betroffene Seite hast, könntest du versuchen, mittels diesem ein link-Element mit den nötigen Attributen rel, href und type zu erzeugen und in das head-Element einzuhängen, welches dann auf eine von dir erstellte CSS-Datei verweist.

    Einen schönen Dienstag noch.

    Gruß, Ash*feel free*ura

    --
    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