CSS-Heben Sie die Eigenschaften eines Elements, wenn Sie den Cursor auf einen anderen bewegen. Pseudoklasse

In den nächsten Absätzen möchte ich den Selektor der allgemeinen verwandten Elemente (oder ~) und seiner möglichen Anwendung näher in Betracht ziehen.
Um diesen Artikel zu schreiben, wurde ich von einer kleinen Prävalenz von Informationen über ihn geschoben.

Was ist das?
Die Hauptaufgabe des Selektors der allgemeinen verwandten Elemente ist die Auswahl eines Elements (en), das nach einem gegebenen Gegenstand auftritt, und mit einem gemeinsamen Elternteil mit sich.
Mandes all das wie folgt:
A ~ B (Stil)wo EIN. und B. - String-Werte, die den Selektor definieren. stil. - anwendbare Eigenschaften.
Beispiel
HTML:

Titel

Untertitel 1.

Es ist ein Absatz mit Text

Untertitel 2.

Dies ist der in der Spanne gerahmtext

CSS:
H1 ~ H2 (Farbe: rot;)
Infolgedessen werden die Header H2 in Rot lackiert, weil Sie haben ein gemeinsames Elternteil mit der Überschrift H1 und in dem Code, den sie danach stehen.

Wenn das Element über der Quelle steht, wird es nicht ausgewählt.

Es sollte daran erinnert werden, dass nur die Elemente, die einen gemeinsamen Elternteil mit dem Original haben, und nicht diejenigen, die nur einen gemeinsamen Vorfahren haben, ausgewählt sind. Es zeigt das zweite Beispiel gut.

Beispiel

Titel

Untertitel 1.

Es ist ein Absatz mit Text

Untertitel 2.

Dies ist der zweite Absatz mit Text. Dies ist der in der Spanne gerahmte Text, der sich in Absatz befindet

Infolgedessen wird nichts rot unterschieden, weil Elternelement span - P und Element H1 - Artikel.
Um rot zu werden, ist es notwendig, es entweder auf einer Ebene mit H1 aus dem Absatz zu nehmen oder dies zu tun:

Verwendung mit: Hover
Meiner Meinung nach zeigt der gesamte Hilfswähler "A ~ B" in einem Bündel mit den Ereignissen von Elementen, wie zum Beispiel: Hover, Fokus usw.
Wenn dies früher möglich war, den Elementstil nur zu ändern, wenn Sie den Mauszeiger darauf bewegen, können Sie die Verwendung des Selektors von verallgemeinerten verwandten Elementen dazu bringen, den Stil eines anderen Elements als das Ereignis zu ändern, das passiert ist.

Symbolisch (im Fall von: Hover) sieht es so aus:
A: Hover ~ B (Stil)wo EIN. - das Element, an dem der Mauszeiger schwebt, und auf B. Neue Stilregeln werden verteilt.

Beispiel

HTML:
Bewegen Sie den Zeiger auf diese Inschrift und Blöcke werden grün

Blocknummer 1 blockieren
Blocknummer 2.

Div (Breite: 100px; Höhe: 50px; Rand: 5px; Hintergrund: grau;) span: schwebt ~ div (Hintergrund: grün;)

Infolgedessen werden die Blöcke beim Besuch der Inschrift zu einer grünen Farbe.

Paint Block Nummer 2 in grüner Farbe
Paint Block Nummer 1 in blauer Farbe

Blocknummer 1 blockieren
Blocknummer 2.

CSS: Spannweite (Cursor: Zeiger;) div (Breite: 100px; Höhe: 50px; Rand: 5px; Hintergrund: grau;) .span1: schweben ~ .block2 (Hintergrund: grün;) .span2: schweben ~ .block1 (Hintergrund : Blau;)

Sie können sich so anwenden:
HTML:
Malen Sie den Block in Rot
Lackblock in blauer Farbe
Malen Sie den Block in grün

Block

CSS: Spannweite (Cursor: Zeiger;) div (Breite: 100px; Höhe: 50px; Rand: 5px; Hintergrund: grau;) .spanred: HOVER ~ .BLOCK (Hintergrund: rot;) .spanblue: schweben ~ .block (Hintergrund : Blau;) .spangreen: schwebt ~ .block (Hintergrund: grün;)
Demo

Anime.
Ein sehr interessanter Effekt kann in Aggregat mit neuen CSS3-Funktionen erreicht werden. Beispielsweise wird in dem Beispiel unten die Übergangseigenschaft verwendet.

Beispiel

HTML:
Recht Links Oben Nieder

Block

CSS: Span (Position: absolut; Anzeige: Block; Breite: 100px; Höhe: 50px; Rand: 10px; Hintergrund: Silber; Cursor: Zeiger;) .Left (oben: 12%;) .recht (oben: 12%; Links: 40%;) .top (links: 20%;) .down (oben: 25%; links: 20%;) .block (Position: absolut; oben: 50%; rechts: 50%; Breite: 100px; Höhe: 50px; Rand: 5px; Hintergrund: grau; -webkit-Transosition: Alle 2er Leichtigkeit; -O-Transosition: Alle 2s Leichtigkeit; -Moz-Transosition: Alle 2s Leichtigkeit;) .recht: schweben ~ .block (rechts: 10%;) .Left: Hover ~ .block (rechts: 90%;) .top: schweben ~ .block (oben: 10%;) .down: schweben ~ .block (oben: 90%;)
Demo

Wie Sie sehen, hat der Selektor generalisierter verwandter Elemente eine ausreichende Anzahl an interessanten Gebrauchsweisen. IM in letzter Zeit CSS ist weit fortgeschritten und ermöglicht es Ihnen, zu erkennen, was bisher nur mit JavaScript möglich war.
Aber immer noch, meiner Meinung nach, wenn Sie Analogien durchführen, ist CSS eine mechanische Komponente (wenn Sie möchten - "Eisen"), die nicht zur Erstellung von Logik vorgesehen ist. JavaScript kann zum Beispiel als "Software" fungieren.
In diesem Artikel habe ich also versucht, das Thema des Selektors der generalisierten verwandten Elemente anzuzeigen. Es stellte sich heraus oder nicht, um Sie zu beurteilen.

Um die Eigenschaft eines bestimmten Elements in CSS zu ändern, gibt es ein solches Konzept als Selektor : schweben.
Besonders weit verbreitet. schweben. Erwirft, wenn Sie die Link-Eigenschaft ändern müssen, wenn Sie den Cursor bewegen. Zum Beispiel können wir den Link leicht betonen, der standardmäßig nicht hervorgehoben wird:


Lektionen, CSS-Rezepte

Mittels eINE VERBINDUNG. und a: besucht Wir haben Eigenschaften für alle Links hingewiesen, einschließlich derjenigen, mit denen der Benutzer früher bestanden hat ( : hat besucht). Alle Links erwerben grün und werden einem gewöhnlichen Text, ohne Unterstrich. Während a: Hover. Gibt einen Hinweis darauf, den Link mit jedem schwebenden Cursor hervorzuheben.
Auf dieselbe Weise können wir beim Schweben einer Maus ein Bordbild hinzufügen:

S. einfache BeispieleWir wenden sich an eine seltenere Aufgabe, die in den Titel des Artikels eingesetzt wurde. Wie kann man die Eigenschaften eines untergeordneten Elements ändern, wenn Sie den Cursor mit dem Elternelement bewegen?
Die Situation ist sehr einfach erlaubt. Zunächst wird das übergeordnete Element mit dem Selektor stimmberechtigt : schweben Dann gibt es eine Bezeichnung eines untergeordneten Elements, das umgewandelt werden muss:


Leben leben
nicht stile CSS. Lernen.


CSS lernen, nicht Leben leben.

Wenn Sie den ersten Satz besuchen, Text im Tag im Tag rot markiert. In diesem Fall, Teil außerhalb Es bleibt grün. Außerdem ändert sich die Farbe nicht, wenn Sie den Cursor zum unteren Text, der sich außerhalb des Tags befindet, bewegt

.
Damit das Rezept visueller geworden ist, lasst uns Beton ansteigen technische Aufgabe: Es gibt einen Block Div. innerhalb von denen zwei Bilder platziert werden. Das erste Bild ist gezeigt, und der zweite - versteckt und sollte nur angezeigt werden, wenn Sie die Maus bewegen Div..
Die Rezeptlösung ist einfach:




: Wenn Sie den Cursor auf dem Monitorbild bewegen, wird in der oberen linken Ecke ein Pfeil mit einem grünen Schatten angezeigt. Wenn der Benutzer den Cursor aus dem Bild entfernt, Bild playbutton.png. verschwindet wieder.

Es lohnt sich, daran zu erinnern, dass das Design div # Block: Hover in dem Fall angewendet, wann

es gibt id \u003d "block" . Wenn es um den Unterricht geht klasse \u003d »Block» Verwenden Sie den Punkt div.block: schweb .

Pseudoclasses bestimmen den dynamischen Zustand der Elemente, die sich mit den Aktionen des Benutzers sowie die Position in der Dokumentbaum ändern. Ein Beispiel für einen solchen Zustand ist ein Textlink, der seine Farbe ändert, wenn sie auf den Mauszeiger blüht. Bei der Verwendung von Pseudo-Schulen überlastet der Browser das aktuelle Dokument nicht, sodass Sie mit Pseudo-Schulen verschiedene dynamische Effekte auf der Seite erhalten.

Die Syntax der Anwendung von Pseudoclass ist als nächstes.

Wahlschalter: Pseudo-Klasse (Beschreibung der Stilregeln)

Zunächst ist der Selektor angegeben, um der Pseudoklasse hinzugefügt zu werden, dann folgt der Darm dem Namen Pseudoclassa. Es dürfen Pseudo-Klassen auf die Namen von Bezeichnern oder Klassen anwenden (A.Menu: Hover (Farbe: Grün)) sowie auf kontextuelle Selektoren ( .Menu A: Hover (Hintergrund: # FC0)). Wenn die Pseudo-Klasse ohne einen ausgewählten Wähler angegeben ist (: HOVER), gilt es für alle Elemente des Dokuments.

Konditionell sind alle Pseudoclasses in drei Gruppen unterteilt:

  • den Zustand der Elemente definieren;
  • bezogen auf den Baum von Elementen;
  • angabe der Sprache des Textes.

Pseudoclasses, die den Status der Elemente bestimmen

Diese Gruppe enthält Pseudoclass, die den aktuellen Status des Elements erkennen und den Stil nur für diesen Zustand verwenden.

: Aktiv

Passiert, wenn der Benutzer aktiviert ist. Beispielsweise wird der Link aktiv, wenn Sie den Cursor betrachten, und klicken Sie auf die Maus. Trotz der Tatsache, dass fast jedes Element der Webseite aktiv sein kann, wird die Pseudoklasse: Active hauptsächlich für Referenzen verwendet.

: Verknüpfung.

Es gilt für ungepflegte Verbindungen, d. H. Diese Links, auf die der Benutzer noch nicht gedrückt hat. Der Browser speichert die Verlauf der Besuche für einige Zeit, sodass die Referenz mindestens markiert werden kann, da der Übergang zuvor aufgezeichnet wurde.

Aufnahme A (...) und A: Link (...) ist gleich seinem Ergebnis, da der Browser den gleichen Effekt angibt, sodass die Pseudo-Klasse: Link nicht angezeigt werden kann. Eine Ausnahme ist, auf ihnen Action: Link gilt nicht.

: Fokus

Es wird bei Erhalt des Fokus auf den Artikel angewendet. Beispielsweise bedeutet für ein Textform den Fokusleidem, dass der Cursor in dem Feld installiert ist, und der Text kann mit der Tastatur in sie eingegeben werden (Beispiel 15.1).

Beispiel 15.1. Anwendung Pseudoclass: Fokus

HTML5 CSS 2.1 IE CR OP OP FX

Pseudoklasse

Das Ergebnis des Beispiels ist unten gezeigt (Abb. 15.1). Die zweite Zeile enthält den Cursor, sodass das Textfeld Fokus empfangen wird.

In diesem Beispiel enthält das Textfeld einen vorläufigen Text, er wird durch den Wert des Werts des Wertes des Tags bestimmt . Wenn Sie auf das Formularelement klicken, wird das Fokusfeld erhalten, und die Textfarbe ändert sich auf rot. Es reicht aus, klicken Sie auf eine beliebige Stelle auf der Seite (außer dem Textfeld natürlich), wie der Fokusverlust auftritt, und der Text kehrt zur ursprünglichen schwarzen Farbe zurück.

Das Ergebnis ist nur für diese Elemente sichtbar, die den Fokus erhalten können. Insbesondere sind dies Tags , ,