Advertisement
  1. Code
  2. HTML & CSS

11 klassische CSS-Techniken, vereinfacht mit CSS3

Scroll to top
Read Time: 15 min

German (Deutsch) translation by Federicco Ancie (you can also view the original English article)

Wir mussten alle einen Effekt erzielen, der eine zusätzliche Handvoll Divs oder PNGs erforderte. Wir sollten uns nicht auf diese alten Techniken beschränken, wenn ein neues Zeitalter kommt. Dieses neue Zeitalter nimmt die Verwendung von CSS3 an. Im heutigen Tutorial zeige ich Ihnen elf verschiedene zeitaufwändige Effekte, die mit CSS3 ganz einfach erzielt werden können.


CSS3? Was ist das?!

Ich bin sicher, Sie haben von CSS gehört. CSS3 unterscheidet sich in Bezug auf die Syntax nicht wesentlich. Die Leistung von CSS3 ist jedoch viel größer. Wie Sie in diesen elf Techniken sehen werden, können Sie mehrere Hintergründe haben, die Größe dieser Hintergründe, Randradien, Textschatten und mehr dynamisch ändern!

Folgendes sagt die offizielle (oder zumindest meiner Meinung nach offizielle) Website von CSS3, css3.info, zu CSS3:

CSS3 ist das neue Kind in der Stylesheet-Familie. Es bietet aufregende neue Möglichkeiten, um mit Ihren Designs eine Wirkung zu erzielen, ermöglicht es Ihnen, vielfältigere Stylesheets für eine Vielzahl von Anlässen und vieles mehr zu verwenden.

Was wir abdecken werden

Hier sind die 11 Techniken, die ich Ihnen zeigen werde, wie Sie mit CSS3 neu erstellen. Ich zeige Ihnen, wie Sie sie mit CSS2 (oder JavaScript) und dann mit CSS3-Eigenschaften erstellen. Denken Sie daran, dass diese Effekte nur in modernen Browsern funktionieren, die diese CSS3-Funktionen implementieren. Sie können diese am besten mit Safari 4 anzeigen.

  1. Abgerundete Ecken
  2. Box Schatten
  3. Textschatten
  4. Ausgefallene Schriftart
  5. Opazität
  6. RGBA
  7. Hintergrundgröße
  8. Mehrere Hintergründe
  9. Säulen
  10. Randbild
  11. Animationen

1. Abgerundete Ecken

Rounded CornersRounded CornersRounded Corners

Wahrscheinlich mein Favorit auf dieser Liste - abgerundete Ecken, die einem Entwickler so viele Optionen geben. Sie können in Sekunden eine Schaltfläche mit abgerundeten Ecken erstellen. Am liebsten setze ich einen Verlaufshintergrund, der entlang der x-Achse wiederholt wird, und wende dann abgerundete Ecken an, um eine sehr gut aussehende Web 2.0-Schaltfläche zu erstellen.

Sie können abgerundete Ecken mithilfe von vier zusätzlichen divs oder mithilfe von JavaScript simulieren. Obwohl ein Benutzer diese glatten Ecken nicht sieht, wenn JavaScript deaktiviert ist, denke ich, dass das in Ordnung ist, solange die Website noch so funktioniert, wie sie sollte. Sie können sich über diese Methode informieren, wenn Sie bei der Erstellung abgerundeter Ecken lieber reines CSS verwenden möchten.

Klassischer Weg

1
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2
<script type="text/javascript" src="js/jquery.corners.js"></script>
3
<script type="text/javascript">
4
$(function(){
5
	$('.box').corners('10px');
6
});
7
</script>
8
9
<div class="box">
10
	<!--CONTENT-->
11
</div>

Die klassische Methode verwendet jQuery zusammen mit einem JavaScript-Plugin namens Corners.

CSS3-Weg

1
<style type="text/css">
2
.box {
3
border-radius: 10px;
4
-moz-border-radius: 10px;
5
-webkit-border-radius: 10px;
6
}
7
</style>
8
9
<div class="box">
10
	<!--CONTENT-->
11
</div>

Wie Sie sehen, müssen Sie drei CSS3-Eigenschaften angeben. Schließlich wird es nur einer sein; Sie müssen jetzt drei verwenden, da verschiedene Browser unterschiedliche Eigenschaftsnamen verwenden.

Sehen Sie sich die Demo an.

2. Box Shadow

Box ShadowBox ShadowBox Shadow

Box Shadows bieten Ihnen ein sehr leistungsfähiges Werkzeug. In 99% der Fälle, in denen ich entwerfe, verwende ich Schlagschatten für etwas. Ich werde wieder ein jQuery-Plugin verwenden, um mich um den klassischen Weg zu kümmern, denn, ehrlich gesagt, es ist verwirrend, nur mit CSS herauszufinden. Warum sollte ich meine Zeit damit verschwenden, mit negativen Margen herumzuspielen, wenn alles bereits geschrieben ist und Job für mich erledigt? Solange mein Design gut aussieht, wenn Leute JavaScript deaktiviert haben, bin ich mit einem jQuery-Plugin vollkommen zufrieden.

Klassischer Weg

1
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2
<script type="text/javascript" src="js/jquery.dropShadow.js"></script>
3
<script type="text/javascript">
4
$(function(){
5
	$('.box').dropShadow({
6
		left: 5,
7
		top: 5,
8
		opacity: 1.0,
9
		color: 'black'
10
	});
11
});
12
</script>
13
14
<div class="box">
15
	<!--CONTENT-->
16
</div>

Ich benutze das dropShadow Plugin. Einfach und was ich wollte; obwohl ich lieber nur CSS verwenden würde;).

CSS3-Weg

1
<style type="text/css">
2
.box {
3
box-shadow: 5px 5px 2px black;
4
-moz-box-shadow: 5px 5px 2px black;
5
-webkit-box-shadow: 5px 5px 2px black;
6
}
7
</style>
8
9
<div class="box">
10
	<!--CONTENT-->
11
</div>

Die Werte für die Eigenschaften des Feldschattens sind: x-offset y-offset blur color. Viel einfacher als das Importieren von zwei JavaScript-Dateien und VIEL einfacher als das Herumspielen mit Hintergrundbildern und negativen Rändern.

Sehen Sie sich die Demo an.

3. Textschatten

Text ShadowText ShadowText Shadow

Wenn Sie jemals ein Tutorial zum Erstellen des Buchdruckeffekts in Photoshop gelesen haben, wissen Sie, dass der Schlagschatteneffekt verwendet wird. Es ist wirklich einfach, Buchdruck zu erstellen. Folgen Sie einfach diesem Tutorial bei Line25 von Chris Spooner.

Klassischer Weg

1
<style type="text/css">
2
.font {
3
font-size: 20px;
4
color: #2178d9;
5
}
6
.fonts {
7
position: relative;
8
}
9
.fonts .font {
10
position: absolute;
11
z-index: 200;
12
}
13
.fonts .second {
14
top: 1px;
15
color: #000;
16
z-index: 100;
17
}
18
</style>
19
20
<div class="fonts">
21
	<span class="font">The quick brown fox jumps over the lazy dog.</span>
22
	<span class="font second">The quick brown fox jumps over the lazy dog.</span>
23
</div>

Anstatt ein jQuery-Plugin zu verwenden, benutze ich nur einige einfache CSS-Tricks, um den Text absolut hinter der anderen Textkopie zu positionieren. Das einzig schlechte daran, CSS3 in dieser Situation nicht zu verwenden, ist, dass Sie zwei Kopien des Textes erhalten, wenn CSS deaktiviert ist.

CSS3-Weg

1
<style type="text/css">
2
.font {
3
font-size: 20px;
4
color: #2178d9;
5
}
6
.font {
7
text-shadow: 0 1px 0 #000;
8
}
9
</style>
10
11
<span class="font">The quick brown fox jumps over the lazy dog.</span>

Wenn Sie unscharfe Textschatten verwenden möchten (die dritte "Option" in der Eigenschaft "text-shadow"), weiß ich nicht, wie Sie dies mit reinem CSS und ohne Bilder erreichen würden.

Sehen Sie sich die Demo an.

4. Ausgefallene Schriftart

Fancy FontFancy FontFancy Font

Wir haben schon lange davon geträumt, aber Sie können endlich "ausgefallene Schriftarten" im Web anzeigen, ohne sich auf JavaScript verlassen zu müssen. Dies führt natürlich zu Problemen beim Verteilen kostenpflichtiger Schriftarten über das Internet. Jedenfalls präsentiere ich Ihnen @ font-face.

Klassischer Weg

1
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2
<script type="text/javascript" src="js/cufon.js"></script>
3
<script type="text/javascript" src="js/loyal.js"></script>
4
<script type="text/javascript">
5
$(function(){
6
	Cufon.replace('.classic .font');
7
});
8
</script>
9
<style type="text/css">
10
.font {
11
font-size: 20px;
12
}
13
</style>
14
15
<span class="font">The quick brown fox jumps over the lazy dog.</span>

Ich entschied mich, Cufón zu verwenden, um den Text zu ersetzen. Ich werde nicht erklären, wie man es benutzt, weil Jeffrey bereits einen großartigen Screencast hat.

CSS3-Weg

1
<style type="text/css">
2
@font-face {
3
font-family: 'Loyal';
4
src: url('loyal.ttf');
5
}
6
.font {
7
font-family: Loyal;
8
font-size: 20px;
9
}
10
</style>
11
12
<span class="font">The quick brown fox jumps over the lazy dog.</span>

Wir erstellen eine Schriftfamilie mit @font-face und verwenden sie dann als Wert für die Schriftfamilie. Michael Owens hat hier vor ungefähr einem Monat einen Artikel geschrieben, der @font-face recht gut erklärt.

Sehen Sie sich die Demo an.

5. Deckkraft

OpacityOpacityOpacity

Wenn Sie kürzlich die Neugestaltung der Envato-Website besucht haben, haben Sie möglicherweise bemerkt, dass viele transparente Elemente vorhanden sind. Obwohl dies mit transparenten PNGs erreicht wird, können Sie mithilfe der Opazitätseigenschaft einen ähnlichen Effekt erzielen. Jetzt gibt es die Opazitätseigenschaft schon eine Weile, aber unser geliebter IE hat seine eigenen Eigenschaften.

Klassischer Weg

1
<style type="text/css">
2
.box {
3
opacity: .6; // all modern browsers (this is CSS3)
4
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; // IE 8
5
filter: alpha(opacity=60); // IE 5-7
6
}
7
</style>
8
9
<div class="box">
10
	<!--CONTENT-->
11
</div>

CSS3-Weg

1
<style type="text/css">
2
.box {
3
opacity: .6;
4
}
5
</style>
6
7
<div class="box">
8
	<!--CONTENT-->
9
</div>

Mit CSS3 haben wir gerade zwei Eigenschaften beseitigt, die spezifisch für IE waren. Ist das nicht großartig?!

Sehen Sie sich die Demo an.

6. RGBA

RGBARGBARGBA

Jeder weiß, wofür RGB steht (rot, grün, blau), aber wofür steht das A? Es steht für Alpha, was sich auf die Transparenz bezieht.

Abgesehen von abgerundeten Ecken ist RGBA meine am zweithäufigsten verwendete CSS3-Eigenschaft. Manchmal möchte ich Navigationslinks nur ein paar hellweiße/schwarze Hintergründe hinzufügen, wenn ein Benutzer mit der Maus darüber fährt. Es ist viel einfacher, als für jede Farbe ein neues Bild zu erstellen. Mit ein wenigPHP wird es jedoch viel einfacher.

Klassischer Weg

Da dies kein PHP-Artikel ist, werde ich nicht auf PHP eingehen. Speichern Sie diese Datei einfach als rgba.php und wenn Sie eine bestimmte RGBA-Farbe benötigen, machen Sie die Hintergrundfarbe als URL (rgba.php?r=R&g=G&b=B&a=A).

1
<?php

2
$image = imagecreatetruecolor(1, 1);

3
$r = (int)$_GET['r'];

4
$g = (int)$_GET['g'];

5
$b = (int)$_GET['b'];

6
$a = (float)$_GET['a'];

7
$white = imagecolorallocate($image, 255, 255, 255);

8
$color = imagecolorallocatealpha($image, $r, $g, $b, 127*(1-$a));

9
imagefill($image, 0, 0, $white);

10
imagefilledrectangle($image, 0, 0, 1, 1, $color);

11


12
header('Content-type: image/png');

13
imagepng($image);

14
?>

Wenden Sie das jetzt einfach auf eine Div an...

1
<style type="text/css">
2
.box {
3
background: url(rgba.php?r=239&g=182&b=29&a=.25);
4
}
5
</style>
6
7
<div class="box">
8
	<!--CONTENT-->
9
</div>

CSS3-Weg

1
<style type="text/css">
2
.box {
3
background: rgba(239, 182, 29, .25);
4
}
5
</style>
6
7
<div class="box">
8
	<!--CONTENT-->
9
</div>

Sehen Sie sich die Demo an.

7. Hintergrundgröße

Background SizeBackground SizeBackground Size

Die Eigenschaft für die Hintergrundgröße ist eine erstaunliche Sache, die Sie beim Erstellen eines flüssigen Layouts auf Ihrem Werkzeuggürtel haben sollten. Ein Beispiel hierfür könnte sein, wenn Sie ein Hintergrundbild für einen Container für die Seitenleiste haben. Die klassische Methode hierfür würde eine Optimierung erfordern, damit das Bild entlang der y-Achse wiederholt wird. Mit CSS3 ist es jedoch so, als würde man eine weitere Hintergrundeigenschaft hinzufügen.

Klassischer Weg

1
<style type="text/css">
2
.box {
3
position: relative;
4
overflow: hidden;
5
}
6
	.box img {
7
	position: absolute;
8
	top: 0;
9
	left: 0;
10
	width: 50%;
11
	height: 50%;
12
	z-index: 100;
13
	}
14
	.box .content {
15
	position: absolute;
16
	z-index: 200;
17
	}
18
</style>
19
20
<div class="box">
21
	<div class="content">
22
		<!--CONTENT-->
23
	</div>
24
	<img src="http://nettuts.s3.amazonaws.com/423_screenr/200x200.jpg" alt="" />
25
</div>

CSS3-Weg

1
<style type="text/css">
2
.box {
3
background: #ccc url(http://nettuts.s3.amazonaws.com/423_screenr/200x200.jpg) no-repeat;
4
-webkit-background-size: 50%; /* Safari */
5
-o-background-size: 50%; /* Opera */
6
-khtml-background-size: 50%; /* Konqueror */
7
}
8
</style>
9
10
<div class="box">
11
	<!--CONTENT-->
12
</div>

Leider ist diese Eigenschaft zum Zeitpunkt dieses Schreibens nicht in Firefox (V3.5.2) implementiert.

Sehen Sie sich die Demo an.

8. Mehrere Hintergründe

Multiple BackgroundsMultiple BackgroundsMultiple Backgrounds

Ah, mehrere Hintergründe. Sie geben den Entwicklern ein sehr leistungsfähiges Werkzeug. Ich kann mir so viele Dinge vorstellen, die mehrere Divs erfordern, nur um mehr als einen Hintergrund zu haben. Der häufigste Ort befindet sich in einem Header-Bereich der Website, aber das ist nur das erste, woran ich gedacht habe.

Klassischer Weg

1
<style type="text/css">
2
.box {
3
width: 200px;
4
height: 150px;
5
background: url(images/bg.png) repeat-x;
6
}
7
	.box2 {
8
	width: 100%;
9
	height: 100%;
10
	background: url(images/text.png) center center no-repeat;
11
	}
12
</style>
13
14
<div class="box">
15
	<div class="box2">
16
		<!--CONTENT-->
17
	</div>
18
</div>

Die klassische Methode ist ziemlich offensichtlich. Wickeln Sie das Div einfach mit einem anderen Div ein und so weiter für jeden Hintergrund, den Sie benötigen. Produziert gut aussehenden Code, nicht wahr?

CSS3-Weg

1
<style type="text/css">
2
.box {
3
width: 200px;
4
height: 150px;
5
background: url(images/text.png) center center no-repeat, url(images/bg.png) repeat-x;
6
}
7
</style>
8
9
<div class="box">
10
	<!--CONTENT-->
11
</div>

Die Syntax ist in dieser sehr einfach zu verstehen. Alles, was Sie für die verschiedenen Hintergründe tun, ist, zwischen jedem ein Komma einzufügen! Dies ist jedoch wieder eine begrenzte Eigenschaft und nur in Safari.

Sehen Sie sich die Demo an.

9. Spalten

ColumnsColumnsColumns

Das ist die interessanteste CSS3-Eigenschaft, die ich je gesehen habe. Es ist nicht etwas, was man im Webdesign oft sieht. Ich habe nur ein- oder zweimal zeitungsähnliche Kolumnen gesehen; Ich mag jedoch, wie der Effekt aussieht, wenn er richtig gemacht wird. Normalerweise würden Sie den Inhalt in Divs aufteilen und diese Divs schweben lassen, aber ich habe ein jQuery-Plugin gefunden, das die Spalten dynamisch rendert.

Klassischer Weg

1
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2
<script type="text/javascript" src="js/jquery.columnize.js"></script>
3
<script type="text/javascript">
4
$(function(){
5
	$('.columns').columnize({
6
		columns: 2
7
	});
8
});
9
</script>
10
<style type="text/css">
11
.column {
12
padding-right: 10px;
13
}
14
.column.last {
15
padding: 0;
16
}
17
</style>
18
19
<div class="columns">
20
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla elementum accumsan mi. Maecenas id dui a magna tempor pretium. Quisque id enim. Proin id tortor. Curabitur sit amet enim vitae quam pharetra imperdiet. Nulla diam ante, pellentesque eu, vestibulum non, adipiscing nec, eros. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Duis a nunc. Donec non dui a velit pulvinar gravida. Nunc rutrum libero vel tortor. Duis sed mi eu metus tincidunt ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In purus lorem, aliquam ac, congue ac, vestibulum quis, felis. Aliquam non sapien.</p>
21
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla elementum accumsan mi. Maecenas id dui a magna tempor pretium. Quisque id enim. Proin id tortor. Curabitur sit amet enim vitae quam pharetra imperdiet. Nulla diam ante, pellentesque eu, vestibulum non, adipiscing nec, eros. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Duis a nunc. Donec non dui a velit pulvinar gravida. Nunc rutrum libero vel tortor. Duis sed mi eu metus tincidunt ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In purus lorem, aliquam ac, congue ac, vestibulum quis, felis. Aliquam non sapien.</p>
22
</div>

Ich habe den Spalten einen kleinen Abstand hinzugefügt, damit der Text nicht gegeneinander zertrümmert wird.

CSS3-Weg

1
<style type="text/css">
2
.columns {
3
-moz-column-count: 2;
4
-webkit-column-count: 2;
5
}
6
</style>
7
8
<div class="columns">
9
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla elementum accumsan mi. Maecenas id dui a magna tempor pretium. Quisque id enim. Proin id tortor. Curabitur sit amet enim vitae quam pharetra imperdiet. Nulla diam ante, pellentesque eu, vestibulum non, adipiscing nec, eros. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Duis a nunc. Donec non dui a velit pulvinar gravida. Nunc rutrum libero vel tortor. Duis sed mi eu metus tincidunt ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In purus lorem, aliquam ac, congue ac, vestibulum quis, felis. Aliquam non sapien.</p>
10
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla elementum accumsan mi. Maecenas id dui a magna tempor pretium. Quisque id enim. Proin id tortor. Curabitur sit amet enim vitae quam pharetra imperdiet. Nulla diam ante, pellentesque eu, vestibulum non, adipiscing nec, eros. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Duis a nunc. Donec non dui a velit pulvinar gravida. Nunc rutrum libero vel tortor. Duis sed mi eu metus tincidunt ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. In purus lorem, aliquam ac, congue ac, vestibulum quis, felis. Aliquam non sapien.</p>
11
</div>

Es gibt eine Handvoll anderer CSS3-Spalteneigenschaften, die Sie anwenden können. Zu Demonstrationszwecken habe ich jedoch nur die Anzahl der Spalten angegeben. Wenn Sie mehr über diese anderen Eigenschaften erfahren möchten, lesen Sie die mehrspaltige Seite unter CSS3.info.

Sehen Sie sich die Demo an.

10. Randbild

Border ImageBorder ImageBorder Image

Ich hatte keine Ahnung von der Eigenschaft des Rahmenbilds, bis ich auf Firefox 3.5 aktualisiert und auf die Website von Chris Spooner gegangen bin und festgestellt habe, dass seine Post-Bilder Bildrahmen hatten. Ich persönlich habe kein Interesse an dieser Immobilie, aber das wird mich nicht davon abhalten zu erklären, wie ich sie erreichen kann.

Klassischer Weg

1
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2
<script type="text/javascript" src="js/jquery.borderImage.js"></script>
3
<script type="text/javascript">
4
$(function(){
5
	$('.classic .box').borderImage('url(images/border.png) 27 27 27 27 round round');
6
});
7
</script>
8
<style type="text/css">
9
.box {
10
border-width: 20px;
11
}
12
</style>
13
14
<div class="box">
15
	<!--CONTENT-->
16
</div>

Anstatt die Zeit damit zu verbringen, mehrere Divs zu erstellen und das Hintergrundbild um das Div herum zu wiederholen, habe ich ein jQuery-Plugin gefunden, das die Arbeit für mich erledigt. Es heißt borderImage und funktioniert genau so, wie es sollte.

CSS3-Weg

1
<style type="text/css">
2
.box {
3
border-width: 20px;
4
-webkit-border-image: url(images/border.png) 27 round;
5
-moz-border-image: url(images/border.png) 27 round;
6
border-image: url(images/border.png) 27 round;
7
}
8
</style>
9
10
<div class="box">
11
	<!--CONTENT-->
12
</div>

Wie Sie sehen können, ist die Eigenschaft des Rahmenbilds etwas seltsam. W3 erklärt, wie es VIEL besser berechnet wird.

Sehen Sie sich die Demo an.

11. Animationen

AnimationsAnimationsAnimations

Okay, wer mag es nicht, wenn ein Element sanft nach links rutscht oder eingeblendet wird, wenn Sie über etwas schweben? Animationen sind großartig, um die Benutzeroberfläche zu verbessern, aber stellen Sie sicher, dass Sie nicht über Bord gehen! Die einzigen Browser, die CSS3-Animationen unterstützen, sind Webkit-basierte Browser. Die einzige andere Möglichkeit, Animationen anzuzeigen, ist die Verwendung von JavaScript. Ich werde jQuery verwenden, weil es meine Lieblings-JavaScript-Bibliothek ist (wenn Sie es noch nicht erraten haben).

Klassischer Weg

1
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
2
<script type="text/javascript">
3
$(function(){
4
	$('.box').hover(function(){
5
		$(this).stop().animate({
6
			top: '20px'
7
		}, 300);
8
	}, function(){
9
		$(this).stop().animate({
10
			top: '0'
11
		}, 300);
12
	});
13
});
14
</script>
15
<style type="text/css">
16
.box {
17
position: relative;
18
}
19
</style>
20
21
<div class="box">
22
	<!--CONTENT-->
23
</div>

CSS3-Weg

1
<style type="text/css">
2
.box {
3
position: relative;
4
-webkit-transition: top 300ms linear;
5
}
6
.box:hover {
7
top: 20px;
8
}
9
</style>
10
11
<div class="box">
12
	<!--CONTENT-->
13
</div>

Beide Codefragmente machen gleich Sachen: Schieben Sie die div 20 Pixel über einen Zeitraum von 300 ms nach unten. Denken Sie daran, dass der CSS3-Code nur in Webkit-Browsern funktioniert!

Sehen Sie sich die Demo an.

Abschluss

Wir sind schon fertig: 11 CSS-Techniken, die mit CSS3 in (hoffentlich naher) Zukunft viel einfacher werden. Natürlich wird es eine Weile dauern, bis wir uns in allen Browsern zu 100% auf diese Eigenschaften verlassen können.

Vergessen Sie nicht, diese anderen Nettuts+ -Tutorials zu lesen, in denen CSS3 behandelt wird:

  • Folgen Sie uns auf Twitter oder abonnieren Sie den Nettuts+ RSS-Feed, um weitere tägliche Tipps und Artikel zur Webentwicklung zu erhalten.


Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.