Hanuta: eine vorhandene Definition für eine neue benutzen

Hi,

ich weiß, der Titel ist verwirrend - das Problem aber auch ;-)

In einer CSS-Datei definiere ich beispielsweise h1 neu. Weiter unten in der identischen Datei definiere ich etwas anderes, dessen Textformatierung identisch mit der h1 ist.
Kann ich in der neuen Definition irgendwie auf h1 verweisen?
Also this way:

.h1 {font-size:11pt;}

.irgendwas {font-weight:600; .h1} <--- Geht sowas?

Ich meine damit jetzt nicht   .h1, .irgendwas {xxxxx}, das kann schnell unübersichtlich werden.

Und nochwas: Kann ich innerhalb einer Definition durch z.b. einen Hover eine andere Definition ändern? Soll heißen, wenn .xxx:hover, dann wird in .yyy irgendwas geändert?

TIA,
Stefan

  1. Hi,

    .irgendwas {font-weight:600; .h1} <--- Geht sowas?

    nein. Was Du willst, geht über die Selektoren - bzw. in erster Linie über semantisches Markup mit günstigen Klassifizierungen. Vererbung findet in CSS auf Basis der Eigenschaften statt.

    Und nochwas: Kann ich innerhalb einer Definition durch z.b. einen Hover eine andere Definition ändern? Soll heißen, wenn .xxx:hover, dann wird in .yyy irgendwas geändert?

    Du kannst nur das Element, seine Nachfahren und seine bzw. dessen Nachfolger beeinflussen. Ein Weg zurück existiert derzeit nicht.

    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
    1. Hi,

      .irgendwas {font-weight:600; .h1} <--- Geht sowas?

      nein. Was Du willst, geht über die Selektoren - bzw. in erster Linie über semantisches Markup mit günstigen Klassifizierungen.

      Ähm, grübel... Übrigens ein schöner Satz - und das ist wirklich Deutsch? ;-) Meinst Du damit "Spielereien" wie div h1 i {xxx}?

      Du kannst nur das Element, seine Nachfahren und seine bzw. dessen Nachfolger beeinflussen. Ein Weg zurück existiert derzeit nicht.

      Schade, das würde jede Menge Code sparen...

      Gruß,
      Stefan

      1. Hi,

        nein. Was Du willst, geht über die Selektoren - bzw. in erster Linie über semantisches Markup mit günstigen Klassifizierungen.
        Ähm, grübel... Übrigens ein schöner Satz - und das ist wirklich Deutsch? ;-)

        um es mit Douglas Adams zu sagen:

        Der vorangegangene Satz ist logisch, das ist nicht das Problem. Lesen Sie ihn nochmal, und Sie werden ihn verstehen.

        ;-)

        Meinst Du damit "Spielereien" wie div h1 i {xxx}?

        Das sind keine "Spielereien". Wer so etwas _nicht_ macht, hat bisher nur "gespielt". Und ja, sowas meinte ich :-)

        Du kannst nur das Element, seine Nachfahren und seine bzw. dessen Nachfolger beeinflussen. Ein Weg zurück existiert derzeit nicht.
        Schade, das würde jede Menge Code sparen...

        Den Weg zurück braucht man nach meiner Erfahrung nur in äußersten Ausnahmefällen. Dann allerdings braucht man ihn _wirklich_ und kann das Problem meistens nicht oder nur durch Änderungen im HTML-Code lösen ...

        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
        1. Salvem

          um es mit Douglas Adams zu sagen:

          Der vorangegangene Satz ist logisch, das ist nicht das Problem. Lesen Sie ihn nochmal, und Sie werden ihn verstehen.

          Jaja, aber nach dem 5ten Lesen hat es immer noch nicht geholfen - ich bin der eher praktische Mensch der durch probieren lernt. Da fallen solch schöne Ausdrücke unter den Tisch - glücklicherweise gibts die Suche ;-)

          Das sind keine "Spielereien". Wer so etwas _nicht_ macht, hat bisher nur "gespielt". Und ja, sowas meinte ich :-)

          Es war schon bewusst in "" gesetzt - ist nicht uninteressant denke ich. Ich fand bis jetzt nur noch keinen Einsatzzweck dafür, benutzt Du die Verschachtelungen ständig?

          Den Weg zurück braucht man nach meiner Erfahrung nur in äußersten Ausnahmefällen. Dann allerdings braucht man ihn _wirklich_ und kann das Problem meistens nicht oder nur durch Änderungen im HTML-Code lösen ...

          Mir ging es um mein CSS-Menü, speziell bei der fehlenden hover-Unterstützung im IE. Das hätte die Sache wesentlich vereinfacht wenn ich in der a:hover - Definition die Höhe des übergeordneten DIVs  hätte ändern können.

          Blauen Himmel noch,
          Stefan

          1. Hi,

            ich bin der eher praktische Mensch der durch probieren lernt. Da fallen solch schöne Ausdrücke unter den Tisch

            genau deswegen nenne ich sie. Oft mangelt es nur an der Kenntnis eines Fachausdruckes, worauf ...

            • glücklicherweise gibts die Suche ;-)

            ... dies folgt.

            Das sind keine "Spielereien". Wer so etwas _nicht_ macht, hat bisher nur "gespielt". Und ja, sowas meinte ich :-)
            Es war schon bewusst in "" gesetzt

            Und ich habe es bewusst fortgeführt :-)

            Ich fand bis jetzt nur noch keinen Einsatzzweck dafür, benutzt Du die Verschachtelungen ständig?

            In annähernd 100% aller Fälle. Die wenigen Ausnahmen sind üblicherweise in eine globale CSS-Ressource ausgelagert (im Grunde die Corporate Identity) und machen oft[1] Gebrauch von !important.

            Mir ging es um mein CSS-Menü, speziell bei der fehlenden hover-Unterstützung im IE.

            Vergisses[tm]. Es wäre wieder etwas, das der IE nicht kann. Reine CSS-Menüs sind für den IE nicht möglich.

            Das hätte die Sache wesentlich vereinfacht wenn ich in der a:hover - Definition die Höhe des übergeordneten DIVs  hätte ändern können.

            Warum? Das eigentliche Problem ist doch, dass Du Links in Links schachteln müsstest, was nicht geht. Über die Größen brauchst Du Dir da noch lange keine Sorgen zu machen.

            Cheatah

            [1] Zumindest öfter als anderswo.

            --
            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
            1. genau deswegen nenne ich sie. Oft mangelt es nur an der Kenntnis eines Fachausdruckes, worauf ...

              Stimmt schon, das schafft auch einige Verständigungsprobleme aus der Welt...

              • glücklicherweise gibts die Suche ;-)

              ... dies folgt.

              Sowieso, in den Tagen, während das Forum offline war, spürte ich den Hauch der Verzweiflung mir schon meine Nackenhaare verglühen...

              In annähernd 100% aller Fälle. Die wenigen Ausnahmen sind üblicherweise in eine globale CSS-Ressource ausgelagert (im Grunde die Corporate Identity) und machen oft[1] Gebrauch von !important.

              Ups, dann sollte ich mir die Möglichkeiten damit wohl doch noch mal genauer anschauen. Bisher bin ich davon ausgegangen dass es eher theoretische Ausführungen sind um die Struktur und Möglichkeiten besser verstehen zu können.

              Vergisses[tm]. Es wäre wieder etwas, das der IE nicht kann. Reine CSS-Menüs sind für den IE nicht möglich.

              In Kombination mit PHP finde ich das Ergebnis aber schon sehr ok. Obwohl es unter jedem anderen (x86)Browser doch runder ausschaut...

              Warum? Das eigentliche Problem ist doch, dass Du Links in Links schachteln müsstest, was nicht geht.

              Nicht ganz. Ich hab da ein <div class="menu">, welches mit hover ausklappt. Für den IE musste ich nach dem div ein a einfügen, damit der Link dann das Menü mit ausgeklapptem Menüpunkt neu lädt. Ich hätte stattdesssen lieber gehabt, in der a:hover-Definition ein menu.heigth einzubauen.

              Bye,
              Stefan

              1. Hi,

                [komplexe Selektoren]

                Ups, dann sollte ich mir die Möglichkeiten damit wohl doch noch mal genauer anschauen. Bisher bin ich davon ausgegangen dass es eher theoretische Ausführungen sind um die Struktur und Möglichkeiten besser verstehen zu können.

                im Gegenteil. Die Selektoren sind es, die CSS eigentlich erst ausmachen. Wer die Mächtigkeit dieser nicht ausschöpft, hat bisher im Grunde nichts anderes gemacht, als <font>-Tags auszulagern :-)

                Nicht ganz. Ich hab da ein <div class="menu">, welches mit hover ausklappt. Für den IE musste ich nach dem div ein a einfügen, damit der Link dann das Menü mit ausgeklapptem Menüpunkt neu lädt.

                Ja.

                Ich hätte stattdesssen lieber gehabt, in der a:hover-Definition ein menu.heigth einzubauen.

                Das würde nichts bringen, da sich der Inhalt, welcher die Höhe ausfüllen soll, innerhalb des Links befinden müsste. Was er übrigens kann (sofern er seinerseits keine Links enthält), weil Du den Inhalt nur auf "wird dargestellt" schalten musst, was die Größe des übergeordneten Elements sofort erhöht - sofern Du es nicht aktiv verhinderst, z.B. durch position:absolute.

                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