DrEvil
Erfahrenes Mitglied
Hallo liebe Gemeinde,
ich baue gerade einen Breadcrumb für eine Seite. Die Brotkrumen sind im wesentlichen Kästen mit einem "Pfeil" nach rechts, um auf die nächst tiefere Ebene zu verweisen, in der man sich befindet.
Den Pfeil erzeuge ich indem ich mit :before und :after zwei Dreiecke über einander lege, die Dreiecke werden wiederum mittels der border-Eigenschaft um einem leeren content erzeugt.
Hier einmal die komplette CSS dafür:
Wenn gehovert wird passt sich der Hintergrund - so wie beabsichtigt - langsam an. Lediglich der Pfeil wechselt sofort, ohne einen weichen Übergang. Guckt ihr hier »
Hab schon verschiede transitions probiert, hab mehrere transitions eingebaut (also z.B. bei #breadcrumb a:hover, damit a:hover:after beinflusst werden soll), alles erfolglos.
Jetzt stellt sich mir die Frage, ob die border-color überhaupt mittels CSS animiert werden kann?
Jemand 'ne Idee für mich?
Ich würde gerne ein Übergang mittels opacity vermeiden, damit der grundsätzliche Effekt (Farbwechsel bei :hover) auch im IE funktioniert und ich nicht noch extra nen Workaround dafür machen muss.
Ich bin wie immer für jede Anregung dankbar.
Gruß Eric
ich baue gerade einen Breadcrumb für eine Seite. Die Brotkrumen sind im wesentlichen Kästen mit einem "Pfeil" nach rechts, um auf die nächst tiefere Ebene zu verweisen, in der man sich befindet.
Den Pfeil erzeuge ich indem ich mit :before und :after zwei Dreiecke über einander lege, die Dreiecke werden wiederum mittels der border-Eigenschaft um einem leeren content erzeugt.
Hier einmal die komplette CSS dafür:
Code:
/*Breadcrumb*/
#breadcrumb {
margin: 30px 10px 10px 10px;
padding-top: 10px;
border-top: 1px dashed #559DB3;
}
#breadcrumb a {
display: inline-block;
position: relative;
padding: 5px 8px 6px 16px; /* @note: unten 1px mehr, damit es mit den Pfeilgrößen sauber abschließt*/
border: 2px solid #BBD8E1;
border-right: none;
color: #BBD8E1;
font-size: 80%;
font-weight: 600;
text-transform: uppercase;
text-decoration: none;
-webkit-transition: all 0.3s linear;
-moz-transition: all 0.3s linear;
-o-transition: all 0.3s linear;
transition: all 0.3s linear;
}
#breadcrumb a:hover {
color: #1C4C5C;
background: #BBD8E1;
}
#breadcrumb a:before {
content: ' ';
position: absolute;
z-index: 2;
right: -28px;
top: -2px;
width: 0;
height: 0;
border: 14px solid;
border-color: transparent transparent transparent #BBD8E1;
}
#breadcrumb a:after {
content: ' ';
position: absolute;
z-index: 2;
right: -22px;
top: 1px;
width: 0;
height: 0;
border: 11px solid;
border-color: transparent transparent transparent #FFF;
}
#breadcrumb a:hover:after {
border-color: transparent transparent transparent #BBD8E1;
}
Wenn gehovert wird passt sich der Hintergrund - so wie beabsichtigt - langsam an. Lediglich der Pfeil wechselt sofort, ohne einen weichen Übergang. Guckt ihr hier »
Hab schon verschiede transitions probiert, hab mehrere transitions eingebaut (also z.B. bei #breadcrumb a:hover, damit a:hover:after beinflusst werden soll), alles erfolglos.
Jetzt stellt sich mir die Frage, ob die border-color überhaupt mittels CSS animiert werden kann?
Jemand 'ne Idee für mich?
Ich würde gerne ein Übergang mittels opacity vermeiden, damit der grundsätzliche Effekt (Farbwechsel bei :hover) auch im IE funktioniert und ich nicht noch extra nen Workaround dafür machen muss.
Ich bin wie immer für jede Anregung dankbar.
Gruß Eric