Problem mit :visited
Guten Tag,
ich habe ein Problem mit der so genannten "Pseudo-Klasse" :visited.
Ich habe schon gelesen, dass es immer vor :hover im css kommen muss und dass es alle css Eigenschaften enthalten kann.
Ich habe auch versucht das Bild als Link zu definieren und dann "pic-1-small a:visited div{" anzusprechen, klappte aber auch nicht.
:hover und :active funktionieren bestens. Nur dieses widerspenstige visited nicht.
Hat einer ne Idee?
MFG Simon
ich habe ein Problem mit der so genannten "Pseudo-Klasse" :visited.
Ich habe schon gelesen, dass es immer vor :hover im css kommen muss und dass es alle css Eigenschaften enthalten kann.
|
|
HTML |
1 2 3 4 |
<div id="pic-1-small"> <img src="./images/1small.jpg" width="150" height="100" alt="picture 1 small"> <div><img src="./images/1big.jpg" width="500" height="350" alt="picture 1 big"></div> </div> |
|
|
Cascading Style Sheet |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#pic-1-small {
float:left;
width:150px;
height:100px;
margin-left:0px;
margin-top:0px;
margin-right:107px;
border:1px solid #000000;
}
#pic-1-small div{
display:none;
}
#pic-1-small:visited div{
display:block;
position:absolute;top:130px;left:350px;
width:500px;
height:350px;
border:5px solid #ffffff;
}
#pic-1-small:hover div{
display:block;
position:absolute;top:130px;left:350px;
width:500px;
height:350px;
border:5px solid #000000;
}
|
Ich habe auch versucht das Bild als Link zu definieren und dann "pic-1-small a:visited div{" anzusprechen, klappte aber auch nicht.
:hover und :active funktionieren bestens. Nur dieses widerspenstige visited nicht.
Hat einer ne Idee?
MFG Simon
welchen Browser nutzt du denn ;>? und was genau willst du machen.
wo weit ich weiß wurde die style Möglichkeit von :visited massiv zurück gefahren wegen Sicherheitsrisiken und beschränkt sich auf color, background-color, border-*-color, and outline-color und wenn du Sibling Selektoren nutzt wird es so behandelt als wenn der link nicht besucht wurde.
ich denke auch solche sachen wie bei dir #pic-1-small:visited div werden nicht mehr funktionieren
mfg LA
wo weit ich weiß wurde die style Möglichkeit von :visited massiv zurück gefahren wegen Sicherheitsrisiken und beschränkt sich auf color, background-color, border-*-color, and outline-color und wenn du Sibling Selektoren nutzt wird es so behandelt als wenn der link nicht besucht wurde.
ich denke auch solche sachen wie bei dir #pic-1-small:visited div werden nicht mehr funktionieren
mfg LA
Hi ,
Ich glaube visited funktioniert nur bei "Links".
Müsstest Du mal ausprobieren
Nicht gestet , aber versuch das mal...
Gruß
Jens
Ich glaube visited funktioniert nur bei "Links".
Müsstest Du mal ausprobieren
|
|
PHP-Quelltext |
1 2 3 |
<a class="pic_small" href="">
<img style="border: 0px solid ; width: 800px; height: 600px;" alt="" src="./images/1small.jpg">
</a>
|
|
|
Cascading Style Sheet |
1 2 3 4 5 6 7 |
a.pic_small:visited { display:block; position:absolute;top:130px;left:350px; width:500px; height:350px; border:5px solid #ffffff; } |
Nicht gestet , aber versuch das mal...
Gruß
Jens
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »jegi0605« (16. März 2011, 19:32)
@lorenz:
habe es versucht in aktuellem FF und Chrome und in IE8. Passiert nichts.
Mein Vorhaben:
ich wollte eine Galerie erstellen ohne Javascript etc. Nur auf HTML/CSS Basis.
Habe es zur Veranschaulichung mal hier hochgeladen:
Galerie
Ich habe die kleinen Bilder um einen Rahmen angeordnet, in dem das Große Bild angezeigt werden soll.
Ich habe in dem Div des kleinen Bildes ein Unterdiv erstellt, indem das große Bild ist.
Dieses Div ist auf Display none gesetzt und bei hover über das kleine Bild wird das div als block gedisplayed.
Das funktioniert soweit.
Nun wollte ich durch klick auf eines der kleinen Bilder das große Bild in der Mitte bleibt bis man ein anderes hovert.
Das wollte ich durch visited machen.
Active habe ich probiert das klappt auch - aber das bleibt ja nicht.
In dem CSS Block für Visited muss display block rein, die absolute positionierung auf top x und left x.
@jegi:
Wie ich anfangs geschrieben habe habe ich es auch mit <a...> probiert und das funktionierte auch nicht.
Habe deins auch noch mal direkt getestet. Leider Erfolglos.
@all
Gibt es eine andere Möglichkeit das zu lösen?
MFG Simon
habe es versucht in aktuellem FF und Chrome und in IE8. Passiert nichts.
Mein Vorhaben:
ich wollte eine Galerie erstellen ohne Javascript etc. Nur auf HTML/CSS Basis.
Habe es zur Veranschaulichung mal hier hochgeladen:
Galerie
Ich habe die kleinen Bilder um einen Rahmen angeordnet, in dem das Große Bild angezeigt werden soll.
Ich habe in dem Div des kleinen Bildes ein Unterdiv erstellt, indem das große Bild ist.
Dieses Div ist auf Display none gesetzt und bei hover über das kleine Bild wird das div als block gedisplayed.
Das funktioniert soweit.
Nun wollte ich durch klick auf eines der kleinen Bilder das große Bild in der Mitte bleibt bis man ein anderes hovert.
Das wollte ich durch visited machen.
Active habe ich probiert das klappt auch - aber das bleibt ja nicht.
In dem CSS Block für Visited muss display block rein, die absolute positionierung auf top x und left x.
@jegi:
Wie ich anfangs geschrieben habe habe ich es auch mit <a...> probiert und das funktionierte auch nicht.
Habe deins auch noch mal direkt getestet. Leider Erfolglos.
@all
Gibt es eine andere Möglichkeit das zu lösen?
MFG Simon
wie gesagt sowas kannst du auf jeden Fall nicht mit :visited machen damit würden sonst zu viele Sicherheits Probleme entstehen.
eine wirklich vernünftige Lösung ist denke ich mit css auch nicht wirklich möglich außer vielleicht mit abartigen cssHacks (da hab ich gerad nicht die zeit drüber nachzudenken ob es ne Möglichkeit geben könnte).
Was ich machen würde um wenigstens ein wenig das "User-Erlebnis" zu verbessern, wäre die kleinen divs so zu verbinden das es keine Lücken zwischen ihnen gibt so das man nie über keins gehovert sein kann und darin dann halt die Bilder so anzuordnen wie du möchtest.
mfg LA
eine wirklich vernünftige Lösung ist denke ich mit css auch nicht wirklich möglich außer vielleicht mit abartigen cssHacks (da hab ich gerad nicht die zeit drüber nachzudenken ob es ne Möglichkeit geben könnte).
Was ich machen würde um wenigstens ein wenig das "User-Erlebnis" zu verbessern, wäre die kleinen divs so zu verbinden das es keine Lücken zwischen ihnen gibt so das man nie über keins gehovert sein kann und darin dann halt die Bilder so anzuordnen wie du möchtest.
mfg LA
Also ich habe das Beispiel nochmal abgeändert und die Hoverbereiche vergrößert, dass die Bilder länger im Bereich bleiben.
Beispiel hier
Die großen Bilder hatten verkorkste Ränder, war aber auch nur ein kurzer Test.
Das Beispiel ist finde ich aber keine gescheite Variante für eine Galerie.
Man sollte dann wohl doch auf Javascript vertrauen, oder was meint Ihr?
MFG Simon
Beispiel hier
Die großen Bilder hatten verkorkste Ränder, war aber auch nur ein kurzer Test.
Das Beispiel ist finde ich aber keine gescheite Variante für eine Galerie.
Man sollte dann wohl doch auf Javascript vertrauen, oder was meint Ihr?
MFG Simon
ich würde wie gesagt auf JS gehen die Leute die kein JS haben haben es in den meisten fällen ausgestellt und sind gewohnt teilweise nicht den gewohnten Seitenumfang zu erhalten. Wenn sie deine Bilder sehen wollen müssen sie JS halt anmachen.
mfg LA
ps du könntest ja wenn kein js da ist die Möglichkeit geben das kleine thumb als link zu den großen Bild zu bauen
mfg LA
ps du könntest ja wenn kein js da ist die Möglichkeit geben das kleine thumb als link zu den großen Bild zu bauen
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »lorenz« (17. März 2011, 17:38)
Ähnliche Themen
-
(X)HTML & CSS & DHTML & Javascript »-
Script: Erst auf Banner klicken, dann geht´s weiter
(3. April 2005, 21:18)
-
(X)HTML & CSS & DHTML & Javascript »-
css: 2 verschiedene a (linkfarbe) definieren? möglich?
(13. April 2004, 22:25)
-
PHP »-
keine ahnung warum das nicht geht
(4. April 2004, 13:34)
-
(X)HTML & CSS & DHTML & Javascript »-
css ARGHHHH
(18. März 2003, 20:05)


