Wie Sie mit CSS3 animierte Tooltipps erstellen

Animierte Tooltipps mit CSS3-Übergängen und Pseudoklassen erstellen

Demo1

Im heutigen Artikel zeige ich Ihnen, wie Sie mit CSS3 einfache und animierte Tooltipps mit CSS-Übergängen und den Pseudo-Klassen :before und: after erstellen können.

Die Idee dahinter ist eine ungeordnete Liste mit Links (Social Icons als Grafik), welche beim Drüberfahren mit der Maus (CSS-Eigenschaft hover) eine kleine Infobox erscheinen lässt.

Tooltipps sind überaus nützliche kleine Hilfestellungen in Form von kleinen Popup-Fenstern, die beim Hovern eines Elementes erscheinen. Sie enthalten meist Erklärungen zu dem Element (egal ob Text oder grafisch) und erhöhen somit die Benutzerfreundlichkeit.

Demo 1 – 4 ansehen! | Beispiele als Zip-Datei herunterladen!

HTML:

Die ungeordnete Liste sieht dabei wie folgt aus:


CSS-Anweisungen für Tooltip Nummer 1:

Grundeinstellungen

Die Listenelemente bekommen ein floating:left und die Anker haben folgende Stil-Anweisungen:

              
.tt-wrapper{
        padding: 0;
        width: 435px;
        height: 70px;
        margin: 80px auto 30px auto;
}
.tt-wrapper li{
        float: left;
}
.tt-wrapper li a{
        display: block;
        width: 68px;
        height: 70px;
        margin: 0 2px;
        outline: none;
        background: transparent url(../images/growcase_the_social_gunman_icons.png) no-repeat top left;
        text-indent: -9000px;
        position: relative;
}

Hintergrund-Position für die Social-Icons festlegen

Jeder Anker bekommt eine eigene Hintergrund-Position für die Hintergrund-Grafik

               
.tt-wrapper li .tt-gplus{
    background-position: 0px 0px;
}
.tt-wrapper li .tt-twitter{
    background-position: -68px 0px;
}
.tt-wrapper li .tt-dribbble{
    background-position: -136px 0px;
}
.tt-wrapper li .tt-facebook{
    background-position: -204px 0px;
}
.tt-wrapper li .tt-linkedin{
    background-position: -272px 0px;
}
.tt-wrapper li .tt-forrst{
    background-position: -340px 0px;
}

span-Element definieren, Pseudoklassen und Hover-Effekt festlegen:

               
.tt-wrapper li a span{
	width: 100px;
	height: auto;
	line-height: 20px;
	padding: 10px;
	left: 50%;
	margin-left: -64px;
	font-family: 'Alegreya SC', Georgia, serif;
	font-weight: 400;	
	font-style: italic;
	font-size: 14px;
	color: #719DAB;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
	text-align: center;
	border: 4px solid #fff;
	background: rgba(255,255,255,0.3);
	text-indent: 0px;
	border-radius: 5px;
	position: absolute;
    pointer-events: none;
	bottom: 100px;
	opacity: 0;
	box-shadow: 1px 1px 2px rgba(0,0,0,0.1);
	transition: all 0.3s ease-in-out;
}

.tt-wrapper li a span:before,
.tt-wrapper li a span:after{
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	margin-left: -9px;
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid rgba(0,0,0,0.1);
}
.tt-wrapper li a span:after{
	bottom: -14px;
	margin-left: -10px;
	border-top: 10px solid #fff;
}

.tt-wrapper li a:hover span{
	opacity: 0.9;
	bottom: 70px;
}

Das sind dann die die gesamten CSS-Befehle für den Tooltipp 1 (Effekt: Rechteck von oben)

Infos zu den Tooltipps Nr. 2 bis 4

Demo 2 zeigt als Hover-Element einen Kreis, Demo 3 ein hochgestelltes Rechteck von unten, Demo 4 ein Rechteck, welches von rechts einschwebt!

Wichtig für Browserverwendung und Mobilversionen!
Unnötig zu sagen, dass die CSS3-Tooltipps nur in den modernsten und gängigsten Browsern funktionieren, welche Pseudo-Elemente, Hover-Effekte und CSS-Übergänge unterstützen.

In den Mobilversionen (Smartphone, Tablets) werden die Mouse-Over-Effekte, die CSS-Transitions und die Pseudo-Elemente :before und :after teilweise fehlerhaft bis gar nicht dargestellt!

Den Originalartikel zu meinem kleinen Tutorial finden Sie hier: How to create animated tooltips with CSS3

Tweet about this on TwitterShare on Google+0Share on Facebook0Email this to someone

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *