Wie das ein-und ausblenden eines div mit CSS?
In meinem Skript gibt es drei divs. Ich möchte die Anzeige div mit class="ab"
wenn ich bewegen Sie den Mauszeiger auf die erste Zeile und Anzeige-div mit class="abc"
beim schweben auf der zweiten Linie. Ansonsten möchte ich zur Anzeige div mit class="a"
standardmäßig.
Aber es zeigt nie die div mit class="a"
.
CSS:
.abc,.ab {
display: none;
}
#f:hover ~ .ab {
display: block;
}
#f:hover ~ .abc,.a {
display: none;
}
#s:hover ~ .abc {
display: block;
}
#s:hover ~ .ab,.a {
display: none;
}
HTML:
<a id="f">Show First content!</a>
<br/>
<a id="s">Show Second content!!</a>
<div class="a">Default Content</div>
<div class="ab">First content</div>
<div class="abc">Second content</div>
Hier mein JSFiddle mein problem: JSFiddle Link
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie
Aktualisierte demo auf http://jsfiddle.net/gaby/n5fzB/2/
Das problem in deiner original-CSS war, dass die
,
im css-Selektoren beginnt eine völlig neue Auswahl. es ist nicht kombinierbar.. so#f:hover ~ .abc,.a
bedeutet#f:hover ~ .abc
und.a
. Sie aufdisplay:none
so war es immer ausgeblendet für alle.a
Elemente..a
wenn einem der andere ist mit der Maus auf".,
im css-Selektoren beginnt eine völlig neue Auswahl. es ist nicht kombinierbar.. so#f:hover ~ .abc,.a
bedeutet#f:hover ~ .abc
und.a
. Sie aufdisplay:none
so war es immer ausgeblendetAusblenden eines Elements:
Anzeigen eines Elements verwenden:
Der Unterschied ist:
Sichtbarkeit Griffe, die Sichtbarkeit des Tags, der
display
Griffe Speicherplatz auf der Seite.Wenn Sie die
visibility
und ändern Sie nicht diedisplay
, auch wenn die tags nicht gesehen, es immer noch Raum braucht.display: none;
?visibility
Regel ist in der Tat redundant, wenn Siedisplay:none
. Beachten Sie, dass ein Umschaltendisplay
verursachen umgebenden Elemente zu bewegen als Ergebnis der Raum-Umverteilung. Wenn dieses "springen" - Effekt ist nicht erwünscht, man könnte verwenden möchtenvisibility
statt.können Sie verwenden Sie eine der folgenden fünf Möglichkeiten sich zu verstecken-element, hängt von Ihren Anforderungen.
Deckkraft
Sichtbarkeit
Display
Position
clip-path
Zeigen, verwenden Sie eine der folgenden:
opacity: 1;
visibility: visible;
display: block;
Quelle : https://www.sitepoint.com/five-ways-to-hide-elements-in-css/
Html-Code :
Script-code:
css-code: