1. Dashboard
  2. Artikel
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. HTML - Webmaster Forum
  2. HTML / Webmaster Forum
  3. HTML & CSS Forum

css-"operator"

  • Greg10
  • 1. April 2008 um 18:36
  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 1. April 2008 um 18:36
    • #1

    also erstmal damit man weiß was ich meine:

    Code
    body div.1 + div.2 {
    background-color:red;
    }


    dieser code würde jedem div der innerhalb von body direkt auf einen anderen div folgt einen roten hintergrund geben.
    Ich suche eigentlich das selbe, nur das die divs nicht direkt hinereinander stehen müssen.
    Mit dem gesuchten operator würden also alle divs die innerhalb von body mit einem anderem div existieren einen roten hintergrund bekommen.
    gibt es sowas?

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • sejuma
    Kaiser(in)
    Reaktionen
    5
    Beiträge
    2.720
    • 1. April 2008 um 19:45
    • #2

    Wenn in body eine Hintergrundfarbe definiert ist, dann ist diese Farbe auf der kompletten Seite und schlägt auf alle div's durch, soweit nicht abweichend definiert.
    Also brauchst du solche Konstruktionen doch gar nicht.
    Oder ist das nicht das Problem?

    [Blockierte Grafik: http://www.ohne-css.gehts-gar.net/img/banner/banner350x20.png]
    sejuma's CSS-Einsteigerkurs

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 1. April 2008 um 20:10
    • #3

    nein, das war nur ein beispiel^^
    und das beispiel oben definiert NICHT für body den hintergrund sondern auf einen div, der direkt auf einen anderen div folgt
    (faustregel: immer auf das, das DIREKT vor der "{" steht ;-))

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • yeti66
    König(in)
    Beiträge
    1.152
    • 1. April 2008 um 20:16
    • #4

    Greg10,

    Code
    body div.1 + div.2 {
    background-color:red;
    }
    Code
    div.1,  div.2 {
    background-color:red;
    }
    Code
    body div.1 + div.3{
    background-color:red;
    }

    ist doch egal + steht für und

    Gruß yeti66 :wink:
    ___________________________________________
    :info:http://www.phpcontact.net/ Kontaktformulare für die eigene Hompage
    http://www.norbert-klippstein.de/ Freiberuflicher Musiker für individuelle Musikdienstleistungen

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 1. April 2008 um 20:21
    • #5

    nein + steht nicht für und^^
    zumindest laut selfhtml
    1. code funktioniert nur wenn die divs direkt hintereinander stehen (das tun sie bei mir nicht)
    2.code weist generell den beiden kalssen eine hitergrund farbe zu, das soll aber NUR der fall sein, wenn auch ein zweiter div vorhanden ist
    3.code ist wie 1. nur mit ner andren klasse

    was ich konkret will:
    ein dropdown mit css, allerdings nicht mit einer liste, sondern mit einem div und einem link, beide sind in ein und dem selben eltern-tag
    ich dachte mir dass so, dass ich mit diesem operator den div dann display-block zuweise, wenn die pseudoklasse a.nav:hover auch enthalten ist, da link und div allerdings nicht direkt hintereinander stehen tuts der + operator halt nich :(

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • yeti66
    König(in)
    Beiträge
    1.152
    • 1. April 2008 um 20:36
    • #6

    Greg10,

    + = und schon nur unter folgender Bedingung:

    Zitat

    Plus-Verknüpfung
    Mit der Plus-Verknüpfung werden in CSS 2 weitere Möglichkeiten wahr. Über die Plus-Verknüpfung kann man Elemente ansprechen, die direkt aufeinandern folgen.

    p + strong {color: #ff0000}

    Für mehr ist es nicht gedacht.

    Gruß yeti66 :wink:
    ___________________________________________
    :info:http://www.phpcontact.net/ Kontaktformulare für die eigene Hompage
    http://www.norbert-klippstein.de/ Freiberuflicher Musiker für individuelle Musikdienstleistungen

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 1. April 2008 um 22:27
    • #7

    und die wird nicht erfüllt^^

    Zitat von Greg10

    (das tun sie bei mir nicht)

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • The User
    Forum Guru
    Beiträge
    4.044
    • 2. April 2008 um 18:50
    • #8

    yeti, beim plus wirkt das nur auf den hinteren "summanden".
    aber wass hat es denn mit den classes 1 und 2 auf sich?

    Freiheit bedeutet mehr.

    "Mir ist die gefährliche Freiheit lieber als eine ruhige Knechtschaft."
    (Jean Jacques Rousseau)
    Mein Blog zum Programmieren, GNU/Linux etc.
    Free Chelsea Manning!
    Stolzer Nutzer von KDE, openSUSE und Qt.

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 2. April 2008 um 18:57
    • #9

    also die eine klasse soltte sein: a#sub:hover die zweite: div#drowpdown normalerweise ist bei #dropdown display auf none aber sobald sich die maus über den link bewegt, soll auf display-block gheschaltet werden
    mit dem + operator funktioniert das schonmal, nur dass dieser verlangt, dass die beiden tags direkt aufeinander folgen, und dass ist nicht der fall.
    Ich habe jetzt zwar eine js-lösung gebastelt, aber css wär da doch eher angebracht, finde ich.

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • The User
    Forum Guru
    Beiträge
    4.044
    • 2. April 2008 um 19:07
    • #10

    also als ich mir denn dropdown gebastelt habe, der funktioniert, hatte ich auch das problem, dass der nicht alle gezeigt hat und so.
    Ich war dann doch dazu gezwungen, die sublinks alle in ein <ul>[*] zu packen.
    Ich hab dann das a.main:hover + ul li.submenu a gemacht.
    Dadurch werden alee as im li angesprochen.
    statt ul li kannst du zwar div oder so benutzen, das hat aber dann den nachteil, dass das dropdown wahrscheinlich beim rüberfahren über die links auf jeden fall sich nicht vollständig erhalten lässt, deshalb dann li.submenu:hover benutzen.
    Das funktioniert

    Viele liebe Grüße
    The User

    Freiheit bedeutet mehr.

    "Mir ist die gefährliche Freiheit lieber als eine ruhige Knechtschaft."
    (Jean Jacques Rousseau)
    Mein Blog zum Programmieren, GNU/Linux etc.
    Free Chelsea Manning!
    Stolzer Nutzer von KDE, openSUSE und Qt.

  • knollo
    Anfänger
    Beiträge
    3
    • 3. April 2008 um 22:09
    • #11

    Hi

    body div.1+div.2
    + = Benachbarte Stielregel: Legt eine bestimmte Reihenfolge fest, in der HTML/XHTML-Befehle aufeinander folgen müssen, damit die Stilregel angewandt werden kann.

    body div.1>div.2
    > = Vater-Kind-Stielregel: Gilt nur in Kombination Vater-Kind(auf Schachtelungsstruktur bezogen).
    Denke mal, wenn ich deine Frage richtig verstanden habe, ist das die Lösung für dich.

    Aber gegen JS ist auch nichts einzuwenden oder einfach mit Pseudo-Klassen umsetzen.
    mfg

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 4. April 2008 um 13:22
    • #12

    nein, vater-kind bringt mir auch nichts, die classen sollen ja nicht verschachtelt sein, sondern innerhalb eines eltern-elements nebeneinander existieren, wobei das eltern-element keine rolle spielt.
    das problem am + ist nur, dass da die befehle aufeinander folgen müssen, was bei mir nicht der fall ist

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • Gast
    • 4. April 2008 um 13:36
    • #13

    Wär vieleicht mal ne Hilfe dein Quälcode zu sehen!

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 4. April 2008 um 13:44
    • #14

    da is nich viel zu sehen^^

    Code
    <div class="navi">
    <a class="drpd">&darr;</a>[img]blind.gif[/img][url='url']Link[/url]
    
    
    <div class="drop">
    weiterer text
    </div>
    </div>

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • The User
    Forum Guru
    Beiträge
    4.044
    • 4. April 2008 um 17:18
    • #15

    wie wäre es mit:

    Code
    div.navi a.drpd:hover+div.drop { display: block; } oder visibility: visible


    Das wäre doch ganz einfach!

    Freiheit bedeutet mehr.

    "Mir ist die gefährliche Freiheit lieber als eine ruhige Knechtschaft."
    (Jean Jacques Rousseau)
    Mein Blog zum Programmieren, GNU/Linux etc.
    Free Chelsea Manning!
    Stolzer Nutzer von KDE, openSUSE und Qt.

  • Greg10
    Prinz(essin)
    Beiträge
    825
    • 4. April 2008 um 17:51
    • #16

    oder ?
    was ist das denn?

    Orthografie und Grammatik in diesem Beitrag sind frei erfunden und eine eventuell gefundene Übereinstimmung mit einer lebenden oder toten Sprache sollte von allen Beteiligten unverzüglich ignoriert werden.

    K-Progs (In bearbeitung)
    Der inoffizielle Forum-hilfe IRC-Channel
    (Server: irc.freenode.net ; Channel: #forum-hilfe) (Client für FF)
    Ich hab auch 'n Jabber-Account beim CCC ;)

  • The User
    Forum Guru
    Beiträge
    4.044
    • 4. April 2008 um 18:10
    • #17

    Ja es gibt die Möglichkeit mit dusplay: none und visibility: invisible.
    Aber das geht ja nicht weils folgen muss, also was ich gerade geschrieben habe geht nicht.
    Also machs so:

    Code
    <div class="navi">
    <a class="drpd">
    Text
    </a>
    <div class="direktdanach">
    <img> und was da noch so war
    <div class="drop">
    Das Unsichtbare
    </div>
    Code
    div.navi a.drpd:hover+div.direktdanach div.drop { display: block; }


    Das Unsichtbare sollte aber kein Link sein, sonst kannst du den nicht drücken.

    Freiheit bedeutet mehr.

    "Mir ist die gefährliche Freiheit lieber als eine ruhige Knechtschaft."
    (Jean Jacques Rousseau)
    Mein Blog zum Programmieren, GNU/Linux etc.
    Free Chelsea Manning!
    Stolzer Nutzer von KDE, openSUSE und Qt.

  • The User
    Forum Guru
    Beiträge
    4.044
    • 4. April 2008 um 20:16
    • #18

    Also Greg hat es mir im Chat nochmal erklärt:
    Wenn man einen Link anklickt, soll ein bestimmter Bereich sichtbar werden.
    Meine Lösung funktioniert zwar nur mit CSS, allerdings wird der Bereich wieder ausgblendet, wenn man mit dem Cursor das Browserfenster verlässt.
    Es werden hoffentlich nicht alle das Browserfenster verlassen, und die meisten Besucher werden es für ihren Fehler halten ;)
    CSS: (mit ein paar hintergrundfarben, hab ich gemacht, um zu sehen, ob die dinger jetzt wirklich da sind, und ob die eigenschaften wirken)

    Code
    div.all { display: none; position: absolute; left: 0; top: 0; z-index: 0; height: 100%; width: 120%;}
    div.activator { height: 100px; width: 250px; background-color: #ff0000;}
    div:active.activator+div.all {display: block; }
    div:hover.all {display: block; }
    div.invisible { display: none;  }
    div:hover.all+div.invisible { display: block; z-index: 100; }


    HTML:

    Code
    <div class="activator">
    Hallo!
    </div>
    <div class="all">
    </div>
    <div class="invisible">
    Hier bin Ich!
    </div>

    Ich hoffe das reicht!

    The User

    Freiheit bedeutet mehr.

    "Mir ist die gefährliche Freiheit lieber als eine ruhige Knechtschaft."
    (Jean Jacques Rousseau)
    Mein Blog zum Programmieren, GNU/Linux etc.
    Free Chelsea Manning!
    Stolzer Nutzer von KDE, openSUSE und Qt.

Tags

  • hilfe
  • link
  • color
  • klasse
  • body
  • direkt
  • hintergrund
  • problem
  • code
  • maus
  • ionen
  • div
  • farbe
  • liste
  • eltern
  • css
  • display
  • strong
  • hintergrundfarbe
  • hover
  • elemente
  • dropdown
  1. Datenschutzerklärung
  2. Impressum
Community-Software: WoltLab Suite™
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
Zitat speichern