#navi li a:hover {
background: url(nav1.PNG);
background-repeat:no-repeat;
background-position: center;
color: #fff;
text-align: center; <!-- /*Das Bild was hinter dem Button kommt*/-->
}
</style> </head> <body> <!-- Navi --> <div class="navi"> <ul id="navi"> <li><a href="/">Home</a></li> <li><a href="/">Game</a></li> <li><a href="/">Home</a></li> </ul> </div> <!-- Hier habe ich es ins html eingebunden -->
Soweit funktioniert es, jedoch will ich das ich für jeden dieser 3 Links ein anderes background image kommt. Gibt es eine möglichkeit OHNE jetzt für jeden Link die gleiche prozedur zu machen? Ich sitz schon seid 3 Stunden drann. .___.
24.04.2011, 15:22
Jesus_666
Geht ganz einfach:
Achtung: Das ist CSS3 und wird von älteren Browsern nicht korrekt unterstützt. Besonders auf die IE-Fraktion solltest du achten, weil die oft noch in uralten Versionen wie IE7 rumgurken, denen :nth-child nichts sagt. Aber du solltesto sowieso deine Seite mit allen Browsern testen, die du darauf erwartest.
Ach ja, du solltest dich allgemein mal über die CSS3-Selektoren schlau machen. Dinge wie :nth-child(even) können sehr praktisch sein.
24.04.2011, 17:03
treeghost
Zitat:
Zitat von Jesus_666
Geht ganz einfach:
Achtung: Das ist CSS3 und wird von älteren Browsern nicht korrekt unterstützt. Besonders auf die IE-Fraktion solltest du achten, weil die oft noch in uralten Versionen wie IE7 rumgurken, denen :nth-child nichts sagt. Aber du solltesto sowieso deine Seite mit allen Browsern testen, die du darauf erwartest.
Ach ja, du solltest dich allgemein mal über die CSS3-Selektoren schlau machen. Dinge wie :nth-child(even) können sehr praktisch sein.
Sollte auf den neusten Browsern laufen laut sitepoint. Jedoch sind mir die meisten anderen Browser egal, solange es in Opera und Firefox läuft. CSS3 ist doch sehr praktisch geworden, vorallem finde ich border-radius sehr hilfreich.
Jedoch wird :nth-child, wie ich gelesen habe, auch über a:hover gemacht. Das würde dann so aussehen:
#navi li:nth-child(5) a:hover{
background: url(nav5.PNG);
background-repeat:no-repeat;
background-position: center;
}
#navi li:nth-child(6) a:hover{
background: url(nav6.PNG);
background-repeat:no-repeat;
background-position: center;
} <!-- /*nav1 ist wie gesagt der erste Button dann kommen die anderen die ich über nth-child() a:hover gemacht habe. Ohne a:hover hat es nicht funktioniert, da sonst sich nur background-image permanent verändert hätte*/-->
Wäre eine möglichkeit gewesen, warscheinlich auch die einfachste aber wenn ich schonmal dabei war das ganze selber zu schreiben wollte ich
schon bei CSS bleiben. Zudem ähnelt der Script ja der :nth-child() classe wenn ich mich nicht irre.