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

Kein Border, wenn Link über Bild

Status
Für weitere Antworten geschlossen.

philipp

Neues Mitglied
Hi

Ich habe ein Problem:
Meine CSS Formatierung formatiert alle links so:

Code:
a {border-bottom:1px dotted farbe;background:inherit;}
a:hover {background:farbe;}

Sieht ja bei Text ganz nett aus, aber wenn ich ein Bild verlinke, dann sieht das komisch aus.
Kann ich also eine Ausnahme festlegen?
irgendwie so in der art "a img {}"

Ich dachte mir schon, dass das nicht möglich sein wird, also habe ich die klasse imglink angelegt, die soll auf alle Bilder kommen, die einen Link darstellen.

Klasse:
Code:
.imglink {border:0px;}
.imglink:hover {background:inherit;}

So:

HTML:
<a href="" class="imglink"><img/></a>

Das funktioniert aber irgendwie nicht, keine Ahnung warum...
 
Werbung:
Mit komisch meinst Du bestimmt den blauen Rahmen um das Bild. Is ganz einfach:
Code:
HTML:
<a><img src="deinbild.jpg" [B]border="0"[/B]/></a>

CSS:
A IMG{border:none;}
 
Werbung:
ganz banal, aber vielleicht hast du ein Problem mit
Vererbungen so das der Wert für das
Image nicht richtig gezogen wird?
einfach mal:
HTML:
<style>

.imglink a {border:0px!important;}
.imglink a:hover img {background:inherit!important;}

</style>

<div class="imglink">
<a href="#"><img src="#" border="0"></a>
</div>
versuchen
 
Zuletzt bearbeitet:
Werbung:
Nein, das meine ich nicht, wenn du meinen Beitrag gelesen hättest würdest du das auch wissen.

Ich hab Deinen Beitrag richtig gelesen, nur leider war Deine Fehlerbeschreibung auf sieht komisch aus reduziert.

Und was bitte ist an der Lösung von prostel anders als an der meinen, abgesehen von diesem vollkommen überflüssigen <div class="imglink"> ;ugl
Das könnt ihr euch sparen und die Klasse genauso gut im <a> selbst vergeben.

Und mit Eurem !important werdet Ihr nicht allzu weit kommen, sollte es sich tatsächlich um einen Vererbungsfehler handeln, denn diese Kaskadierungsregel wird vom IE nur allzu gern überlesen.
 
Und was bitte ist an der Lösung von prostel anders als an der meinen, abgesehen von diesem vollkommen überflüssigen <div class="imglink"> ;ugl
Das könnt ihr euch sparen und die Klasse genauso gut im <a> selbst vergeben.
Ja könnte man, ich habe es auch nur reingepackt da ich es immer
übersichtlicher finde. Also völlig egal ;)

Und mit Eurem !important werdet Ihr nicht allzu weit kommen, sollte es sich tatsächlich um einen Vererbungsfehler handeln, denn diese Kaskadierungsregel wird vom IE nur allzu gern überlesen.
Kurz und knapp: falsch
Der IE interpretiert !Important genauso wie jeder andere Browser auch,
wenn man es richtig einsetzt. Die meisten verwenden ein important
auch gerne mal in der selben Klasse , was an sich schwachsinn ist, und
genau da macht der IE Ärger. Verwendet man !important aber für attribute
in verschiedenen klassen, funktioniert es wunderbar wie überall.

generell gilt aber, erstmal code aufräumen und alles kontrollieren. man
kann meist auf important verzichten wenn der rest code sauber ist.
 
prostel schrieb:
Die meisten verwenden ein important
auch gerne mal in der selben Klasse , was an sich schwachsinn ist, und
genau da macht der IE Ärger. Verwendet man !important aber für attribute
in verschiedenen klassen, funktioniert es wunderbar wie überall.
In welcher selben Klasse? Hä...

Folgender Hack funktioniert wunderbar
Code:
DIV.top
{
eigenschaft:wert !important;
eigenschaft:wert; /* nur für den IE */
}
Weil? kurz und knapp: der IE das !important nicht beachtet.

EDIT:
ich habe es auch nur reingepackt da ich es immer
übersichtlicher finde
Was wird denn daran übersichtlicher, wenn du ein Tag unnötigerweise in ein weiteres Tag packst und diesem dann die Klasse gibst welche eigentlich dem anderen gehört?!
 
Zuletzt bearbeitet:
Werbung:
Ja, er beachtet es nicht weil du das important in der selben klasse hast.
normalerweise trennt man solche dinge und genau dann zieht der IE
das important, wie ich oben auch schon sagte
 
Naja sagen wir so, important lässt sich als hack verwenden, ist in
seinen Grundzügen aber keiner. So war er bei Einführung auch nicht
vorgesehen da er funktioniert, wenn man ihn richtig verwendet und zwar
wenn man Daten kapselt anstatt alles in eine Klasse zu klatschen :)
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben