hansi: CSS für einen bestimmten Bereich ausschalten

Hallo,

gibt es eine Möglichkeit CSS in einem Bereich auszuschalten?

also Beispiel:

<div style="font-weight:bold;">
Diese Schrift ist fett
 <div style="hier müsste eine Eigenschaft rein, die das font-weight wieder zurück setzt">
 Diese Schrift ist wieder normal
 </div>
</div>

Gibt es eventuell eine Möglichkeit das umzusetzen?

Hansi

  1. Was ist an style="font-weight:normal; verkehrt?
    Gruß Wastl

    1. Was ist an style="font-weight:normal; verkehrt?
      Gruß Wastl

      Das war jetzt nur ein Beispiel. In Wirklichkeit gibt es eine rießen Menge an Eigenschaften, die alle wieder richtig hindrehen zu müssen, ist einfach zu viel Aufwand.

      Hansi

      1. Das war jetzt nur ein Beispiel. In Wirklichkeit gibt es eine rießen Menge an Eigenschaften, die alle wieder richtig hindrehen zu müssen, ist einfach zu viel Aufwand.

        Es gibt ja sogenannte StyleSwitcher Scripts mittels denen man via Mausklick das gesamte Aussehen einer Webseite seinen Wünschen entsprechend verändern kann. Theoretisch müßte das auch mit einem <div onload="styleswitcher_funktion_aufrufen()"> functionieren.
        Aber der Aufwand sich durch so ein Skript durchzuwühlen ist auch nicht ohne. :-p
        Gruß Wastl

        1. ich würde das ganze gerne ohne javascript machen, denn ich brauch nur für ein bestimmtest <div> die css definition entfernen.
          es geht um den xinHA editor, der, bei verwendung meines stylesheets nicht richtig dargestellt wird

      2. Hallo!

        Was ist an style="font-weight:normal; verkehrt?

        Das war jetzt nur ein Beispiel. In Wirklichkeit gibt es eine rießen Menge an Eigenschaften, die alle wieder richtig hindrehen zu müssen, ist einfach zu viel Aufwand.

        Und warum wendest du dann überhaupt die "nicht gewollten" Eigenschaften auf diese Objekte an?

        Dafür gibt es ja u.a. Klassen und das System der Spezifität in CSS.

        Gruß Gunther

        1. Hallo!
          Es ist ein CSS-basierendes Design. Nun befindet sich in einem Div-Container ein Element, für die im CSS definierten Angaben nicht gelten sollen

          1. Es ist ein CSS-basierendes Design. Nun befindet sich in einem Div-Container ein Element, für die im CSS definierten Angaben nicht gelten sollen

            Ich nehme stark an, du hast diese Lektion noch nicht absolviert:
            http://de.selfhtml.org/css/formate/kaskade.htm

            mfg Beat

            --
            Woran ich arbeite:
            X-Torah
            ><o(((°>           ><o(((°>
               <°)))o><                     ><o(((°>o
            1. Es ist ein CSS-basierendes Design. Nun befindet sich in einem Div-Container ein Element, für die im CSS definierten Angaben nicht gelten sollen

              Ich nehme stark an, du hast diese Lektion noch nicht absolviert:
              http://de.selfhtml.org/css/formate/kaskade.htm

              mfg Beat

              Doch ist mir schon bekannt, allerdings hilft mir das nicht weiter:

              ich habe hier z.B. meine Seite so aufgebaut:

              HEADER

              MAIN>>>

              und hier ist das Element um das es sich handelt.
              <<<MAIN<<<

              FOOTER

              Würde ich jetzt einen leere Style-Klasse machen, so würde der Browser automatisch auf die Style-Klasse zurückgreifen und diese verwenden.

              Hans

              1. Hi!

                Ich nehme stark an, du hast diese Lektion noch nicht absolviert:
                http://de.selfhtml.org/css/formate/kaskade.htm

                mfg Beat

                Doch ist mir schon bekannt, allerdings hilft mir das nicht weiter:

                Dann läuft bei dir aber vermutlich irgendetwas verkehrt ...!

                ich habe hier z.B. meine Seite so aufgebaut:

                HEADER

                MAIN>>>
                und hier ist das Element um das es sich handelt.
                <<<MAIN<<<

                FOOTER

                Bitte poste doch wenn schon dann zumindest exemplarischen aber richtigen HTML-Code - danke!
                Wie sieht denn/ sehen denn "und hier ist das Element um das es sich handelt" aus? Inline-Level oder Block-Level Element(e)?

                Würde ich jetzt einen leere Style-Klasse machen,

                Und was stelle ich mir bitte unter einen "leere Style-Klasse" vor?

                so würde der Browser automatisch auf die Style-Klasse zurückgreifen und diese verwenden.

                Ja, und was ist daran nicht OK?

                Gruß Gunther

                1. So jetzt mal um es mal klar darzustellen:

                  Ich programmiere mir gerade ein CMS. Unter anderem hat das die Funktion Seiten zu erstellen und Seiten zu bearbeiten.
                  Für diese Sache, habe ich mir einen WYSIWYG Editor downgeloadet (xinha).

                  Meine Seite, die das CMS jetzt (und auch das ACP, wo ich die Seite erstelle/bearbeite) ist in etwa so aufgebaut:

                  ------------
                  ---HEADER---
                  ------------

                  MAIN>>>

                  >>>>>>>>>>>>>
                   >>>CONTENT>>>
                   >>>>>>>>>>>>>

                  -------------
                    -----MENU----
                    -------------

                  --------------
                    ---CMS_TEXT---
                    --------------

                  <<<<<<<<<<<<<
                   <<<CONTENT<<<
                   <<<<<<<<<<<<<

                  <<<<<<<<<<
                  <<<MAIN<<<
                  <<<<<<<<<<

                  ------------
                  ---FOOTER---
                  ------------

                  Alle verschiedenen Bereiche haben ihren eigene CSS-Modifikation:
                  #header {
                  height:10px;
                  margin:0px;
                  text-align:left;
                  width:1000px;
                  }
                  #header a {
                  color:#DDDDDD;
                  }
                  #main h1 {
                  color:#993333;
                  font-size:12pt;
                  margin:0px;
                  padding-bottom:8px;
                  }
                  #main h2 {
                  color:#993333;
                  font-size:11pt;
                  margin:0px;
                  padding-bottom:8px;
                  }
                  #content {
                  float:left;
                  min-height:400px;
                  position:relative;
                  text-align:left;
                  width:945px;
                  }

                  und so weiter.
                  Der WYSIWYG-Editor liegt im CMS-Text Bereich.
                  Leider wird der Editor falsch angezeigt (Buttons übereinander).
                  Schalte ich das CSS jetzt aus und zeige die Seite komplett ohne CSS an, stimmt alles mit dem Editor -> Am CSS ist was falsch.
                  Damit nichts den WYSIWYG Editor stört, würde ich jetzt gerne das CSS an einem bestimmten Bereich "ausschalten". Und das ist mein Problem, wie mache ich das???

                  Hansi

                  1. Der WYSIWYG-Editor liegt im CMS-Text Bereich.
                    Leider wird der Editor falsch angezeigt (Buttons übereinander).
                    Schalte ich das CSS jetzt aus und zeige die Seite komplett ohne CSS an, stimmt alles mit dem Editor -> Am CSS ist was falsch.
                    Damit nichts den WYSIWYG Editor stört, würde ich jetzt gerne das CSS an einem bestimmten Bereich "ausschalten". Und das ist mein Problem, wie mache ich das???

                    Du kannst es nicht.

                    Die Lösung besteht darin, dass alle Angaben nach ihrer besonderen Spezifizierung behandelt werden, entsprechen den Cascading Regeln und der Gewichtung.

                    HTML
                    <c>Ich hätte gerne v1</c>
                    <a>
                      <b>
                        <c id=edit>Ich hätte gerne v1</c>
                      </b>
                      <c>Ich hätte gerne v2</c>
                    <a>

                    CSS
                    c{p:v1}
                    a c{p:v2}

                    du kannst v2 nicht löschen, sondern nur überschreiben.
                    a b c{p:v1}
                    oder
                    #edit {p:v1}

                    Entweder du überschreibst, oder du änderst dein Markup
                    HTML
                    <c>Ich hätte gerne v1</c>
                    <a>
                      <b>
                        <c id=edit>Ich hätte gerne v1</c>
                      </b>
                      <d>
                        <c>Ich hätte gerne v2</c>
                      </d>
                    <a>

                    CSS
                    c{p:v1}
                    d c{p:v2}

                    mfg Beat

                    --
                    Woran ich arbeite:
                    X-Torah
                    ><o(((°>           ><o(((°>
                       <°)))o><                     ><o(((°>o
                  2. Hallo Hansi!

                    So jetzt mal um es mal klar darzustellen:
                    Alle verschiedenen Bereiche haben ihren eigene CSS-Modifikation:

                    Du meinst, du weist Elementen deiner Webseite CSS Eigenschaften zu.

                    und so weiter.

                    Du solltest dir nochmal das Kapitel <http://de.selfhtml.org/css/formate/zentrale.htm@title='Zentrale Formate definieren'> durchlesen.

                    Der WYSIWYG-Editor liegt im CMS-Text Bereich.
                    Leider wird der Editor falsch angezeigt (Buttons übereinander).

                    Es gibt u.a. für den Firefox eine tolle Erweiterung, die für solche Zwecke unschätzbare Dienste leistet - siehe Firebug
                    Damit solltest du dann leicht herausfinden können, welche CSS Formate ungewollt auf deinen Editor "einwirken".

                    Schalte ich das CSS jetzt aus und zeige die Seite komplett ohne CSS an, stimmt alles mit dem Editor -> Am CSS ist was falsch.

                    Damit nichts den WYSIWYG Editor stört, würde ich jetzt gerne das CSS an einem bestimmten Bereich "ausschalten". Und das ist mein Problem, wie mache ich das???

                    Du kannst CSS nicht "ausschalten"!
                    Du hast aber in der Regel die Wahl zwischen 2 Möglichkeiten:
                    1. Du sorgst dafür, dass die nicht gewollten Eigenchaften das betreffende Element "nicht erreichen" (nicht darauf zutreffen) - auch nicht durch Vererbung (Kaskade)
                    2. Du setzt die entsprechenden Eigenschaften für das Element auf die gewünschten Werte

                    Aber bitte, deiner Frage und deinen Ausführungen nach, lässt sich zumindest vermuten, dass du noch ein gewisses Verständnisproblem oder ein falsches Verständnis von der Funktionsweise von CSS hast. Es ist nur eine gut gemeinte Empfehlung, wenn ich dir rate, dich nochmal etwas ausgiebiger mit dem Thema zu beschäftigen. Insbesondere eben mit der Vererbung/Kaskade und den einzelnen Zuweisungsmethoden.

                    Gruß Gunther