• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

hover ändert sich nicht wenn background-color angegeben wurde

andynail

Mitglied
Hallo zusammen

auf meiner Webseite sollen per Funktion Links markiert werden beim anklicken. Jedoch ist auch hover vergeben das dass Hintergrundbild mit zusätzlich dem Background-color ändern soll. Denn diese Farbe passt zum bild und soll den gesamten Platz abdecken.

Und das ist jetzt das Problem. Denn ich klicke den Link an, er wird markiert, doch wenn ich jetzt wieder über den Link fahre, bleibt die Farbe der Markierung stehen und es ist nicht die hober Farbe zu sehen.

Muß ich mir eine andere Methode überlegen den Link zu markieren? Ändert sich die Farbe grundsätzlich nicht wenn background-color vergeben wurde?

Danke gruß Andreas
 
Hallo

vielen Dank, doch die Situation istdiese, daß ich, wenn ich per Funktion:

Code:
function LinkMarkieren(Eintrag)
{
 if (navigator.appName == 'Microsoft Internet Explorer')
 {
 var Farbe = "#ffff99"
 }
 else
 {
 var Farbe = "rgb(255, 255, 144)"
 } 
 Eintrag.style.backgroundColor = Farbe
}

einen Link markiere, die Grafik weiterhin angezeigt wird, doch das was über die Grafik an Hintergrundfarbe herausragt, sich nicht mehr ändert. Es bleibt weiterhin nur die gesetzte Farbe zu sehen.

Und der CSSE dazu lautet:
HTML:
a { font-family: 'Times New Roman'; font-size:18px; text-decoration: none; color:#000; padding-left:20px; padding-right:20px; vertical-align:middle; display:block }
a:hover { font-family: 'Times New Roman'; background-image:url('Pictures/Linkauswahl.jpg'); background-repeat:repeat-x; background-color:#66fbfb }
a:active {color:#CC3333; outline: none;}
a:focus {color:#CC3333; outline: none;}

Vielen Dank gruß Andreas
 
Eine Grafik setzt Du nur beim hover. Über welche Grafik ragt die Hintergrundfarbe dann hinaus?

Wenn etwas hinaus ragt, dann ist entweder die Grafik zu klein oder der Link zu groß.

Die Reihenfolge deiner Link-Definitionen ist unvollständig. Dort fehlen noch die Pseudoklassen link und visited.

Zeig einen Link zur Seite um dein Problem vielleicht genauer verstehen zu können.
 
Hallo

wenn ich a:link mit angebe ändert sich aber nix daran das die Farbe bei hover nicht mehr geändert wird. Die Grafik ist oftmals für den Link in der Höhe zu klein, da diese nur horizontal wiederholt wird. Und um die gesamten Höhe eines Links bei hover abdecken zu können wird die Farbe passend unterhalb der Grafik geändert. Wie oben beschrieben wird die Funktion aufgerufen und dann ist aber nichts mehr von der Farbangabe in hover zu sehen.

Einen Link zu der Seite existiert nicht, da diese nur für einen usb Stick gedacht ist. Und wenn ich nur a und nicht a:link angebe benötige ich ja nicht bei jeder Änderung des Links jedesmal aufs neue die gesamten Angaben über die Darstellung.

Danke Gruß Andreas
 
Es gibt auch kostenlosen Webspace, wo man eine Seite zu Demozwecken hochladen kann.
Der Zahnarzt behandelt dich ja auch nicht vom Telefon aus, sondern muss sich deine Zähne ansehen.
 
Wie oben beschrieben wird die Funktion aufgerufen und dann ist aber nichts mehr von der Farbangabe in hover zu sehen.

Deine JS-Funktion ändert das doch dauerhaft und nicht nur bei onmouseover/hover? Dadurch wird die CSS-Eigenschaft in das style-Attribut des betreffenden Links eingetragen und jede Pseudoklasse hat dann keine Wirkung mehr.

In deinem Fall würde ich über die JS-Funktion nicht die Farbe sondern die Klasse ändern. Weise dem Link eine neue Klasse zu die wiederum die von dir gewünschten Eigenschaften bei den einzelnen Pseudoklassen hat.
 
Hallo threadi

vielen Dank dafür. Das funktioniert. Klar will ich das der Link danach so dargestellt wird - markiert wird. Und das dann hover nicht mehr die Hintergrund- oder Textfarbe ändern kann wollte ich nicht glauben.

Und so passt jetzt. Also noch mal vielen Dank dafür.

Gruß Andreas
 
Zurück
Oben