Erstellen Sie eine Animation der acht Planeten des Sonnensystems, mit Ausnahme ihrer Satelliten. Alle Planeten drehen sich um die Sonne. Die Planeten sind einfarbig und drehen sich vorerst nicht. Effekt statisches Bild: 
Die Animation umfasst: die Sonne und die Planeten, ihre Umlaufbahnen und eine Animation der Planetenumdrehungen. Zeichnen Sie zunächst eine Skizze, entwerfen Sie Größe und Position und berechnen Sie die Ausführungszeit der Animation basierend auf der Umlaufzeit. Die Struktur von HTML: Ein Div mit der Klasse Solarsys als Containerelement des Sonnensystems. Die Position dieses Div ist relativ. Sowohl Planetenbahnen als auch Planeten verwenden div und die Position ist absolut. Der Container verwendet relative und die internen Elemente verwenden absolute Positionierung, wodurch der Effekt relativ einfach zu erzielen ist. Der Nachteil besteht darin, dass die Größe festgelegt ist. XML/HTML-CodeInhalt in die Zwischenablage kopieren - < div Klasse = "Solarsys" >
-
- < div Klasse = "Sonne" > </ div >
-
-
- < div Klasse = "mercuryOrbit" > </ div >
-
-
- < div Klasse = "Merkur" > </ div >
-
-
- < div Klasse = "venusOrbit" > </ div >
-
-
- < div Klasse = "Venus" > </ div >
-
-
- < div Klasse = "earthOrbit" > </ div >
-
-
- < div Klasse = "Erde" > </ div >
-
-
- < div Klasse = "marsOrbit" > </ div >
-
-
- < div Klasse = "Mars" > </ div >
-
-
- < div Klasse = "JupiterOrbit" > </ div >
-
-
- < div Klasse = "Jupiter" > </ div >
-
-
- < div Klasse = "SaturnOrbit" > </ div >
-
-
- < div Klasse = "Saturn" > </ div >
-
-
- < div Klasse = "uranusOrbit" > </ div >
-
-
- < div Klasse = "Uranus" > </ div >
-
-
- < div Klasse = "neptuneOrbit" > </ div >
-
-
- < div Klasse = "Neptun" > </ div >
- </div>
CSS des Solarsystem-Container-Div: Feste Breite, feste Höhe, relative Positionierung und zentrierte Ausrichtung innerhalb der Seite. CSS- CodeInhalt in die Zwischenablage kopieren - .solarsys{
- Breite : 800px ;
- Höhe : 800px ;;
- Position : relativ ;
- Rand : 0 automatisch ;
- Hintergrundfarbe : #000000 ;
- Polsterung : 0;
- transformieren: Skalierung(1);
- }
CSS für das Sonnen-Div: Stellen Sie Breite, Höhe sowie die linke und obere Ecke entsprechend der Größe und Position des Designs ein. Stellen Sie die Farbe ein. Durch eine Vergrößerung des Rahmenradius um 50 % können wir aus einem Quadrat einen Kreis machen. Der Sonnenschein wird durch die 4-stufige Farbeinstellung von Box-Shadow erreicht. CSS- CodeInhalt in die Zwischenablage kopieren - .Sonne {
- links : 357px ;
- oben : 357px ;
- Höhe : 90px ;
- Breite : 90px ;
- Hintergrundfarbe : RGB (248,107,35);
- Randradius : 50 %;
- Kastenschatten: 5px 5px 10px rgb (248,107,35), - 5px - 5px 10px rgb (248,107,35), 5px - 5px 10px rgb (248,107,35), -5px 5px 10px rgb (248,107,35);
- Position : absolut ;
- Rand : 0;
- }
CSS für das Planetenumlaufbahn-Div: Nehmen Sie die Umlaufbahn des Merkur an. Stellen Sie Breite, Höhe sowie die linke und obere Ecke entsprechend der Größe und Position des Designs ein. Die Hintergrundfarbe ist transparent. Durch eine Vergrößerung des Rahmenradius um 50 % können wir aus einem Quadrat einen Kreis machen. Der Rahmentyp ist auf eine gepunktete Linie eingestellt. Die Farbe des Rahmens ist auf Grau eingestellt. Setzen Sie die Breite auf 1. CSS- CodeInhalt in die Zwischenablage kopieren - .mercuryOrbit {
- links : 342,5px ;
- oben : 342,5px ;
- Höhe : 115px ;
- Breite : 115px ;
- Hintergrundfarbe : transparent ;
- Randradius : 50 %;
- Rahmenstil : gestrichelt ;
- Rahmenfarbe : grau ;
- Position : absolut ;
- Rahmenbreite : 1px ;
- Rand : 0px ;
- Polsterung : 0px ;
- }
CSS für das Planet-Div: Nehmen wir an, es ist Merkur. Stellen Sie Breite, Höhe sowie die linke und obere Ecke entsprechend der Größe und Position des Designs ein. Stellen Sie die Farbe ein. Durch eine Vergrößerung des Rahmenradius um 50 % können wir aus einem Quadrat einen Kreis machen. Setzen Sie den Transfrom-Origin-Wert auf den horizontalen und vertikalen Versatz der oberen linken Ecke des aktuellen Divs relativ zum Mittelpunkt des gesamten Solarsystem-Containers. Nach dem Hinzufügen der Rotationsanimation ist der Effekt eine Rotation um den Mittelpunkt. Erstellen Sie eine Animation, verweisen Sie auf die rotierende Keyframe-Animation und führen Sie sie endlos linear aus. Die Ausführungszeit wird hier basierend auf der Umlaufzeit des Planeten berechnet. CSS- CodeInhalt in die Zwischenablage kopieren - .Quecksilber {
- links : 337,5px ;
- oben : 395px ;
- Höhe : 10px ;
- Breite : 10px ;
- Hintergrundfarbe : RGB (166,138,56);
- Randradius : 50 %;
- Position : absolut ;
- Transform-Ursprung: 62,5px 5px ;
- Animation: 1,5 s unendlich linear drehen;
- }
Keyframe-Animation drehen: Gegen den Uhrzeigersinn drehen. CSS- CodeInhalt in die Zwischenablage kopieren - @keyframes drehen {
- 100 % {
- transformieren: drehen (-360 Grad);
- }
- }
Die Grundstruktur ist fertig. Nur in Chrom getestet. Vollständiger Code: XML/HTML-CodeInhalt in die Zwischenablage kopieren - < html >
- <Kopf>
- < Stil >
- .solarsys{
- Breite: 800px;
- Höhe: 800px;;
- Position: relativ;
- Rand: 0 automatisch;
- Hintergrundfarbe: #000000;
- Polsterung: 0;
- transformieren: Skalierung(1);
- }
-
- /*Sonne*/
- .Sonne {
- links: 357px;
- oben: 357px;
- Höhe: 90px;
- Breite: 90px;
- Hintergrundfarbe: rgb(248,107,35);
- Randradius: 50 %;
- Kastenschatten: 5px 5px 10px rgb(248,107,35), -5px -5px 10px rgb(248,107,35), 5px -5px 10px rgb(248,107,35), -5px 5px 10px rgb(248,107,35);
- Position: absolut;
- Rand: 0;
- }
-
- /*Quecksilber*/
- .Quecksilber {
- links: 337,5px;
- oben: 395px;
- Höhe: 10px;
- Breite: 10px;
- Hintergrundfarbe: rgb(166,138,56);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 62,5px 5px;
- Animation: 1,5 s unendlich linear drehen;
- }
-
- /* Merkur-Umlaufbahn */
- .mercuryOrbit {
- links: 342,5px;
- oben: 342,5px;
- Höhe: 115px;
- Breite: 115px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Venus*/
- .venus {
- links: 309px;
- oben: 389px;
- Höhe: 22px;
- Breite: 22px;
- Hintergrundfarbe: rgb(246,157,97);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 91px 11px;
- Animation: Drehung 3,84 s unendlich linear;
- }
-
- /* Umlaufbahn der Venus */
- .venusOrbit {
- links: 320px;
- oben: 320px;
- Höhe: 160px;
- Breite: 160px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Origin: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Erde*/
- .Erde {
- links: 266,5px;
- oben: 391px;
- Höhe: 18px;
- Breite: 18px;
- Hintergrundfarbe: RGB (115,114,174);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 134px 9px;
- Animation: 6,25 s unendlich linear drehen;
- }
-
- /*Erdumlaufbahn*/
- .earthOrbit {
- links: 275px;
- oben: 275px;
- Höhe: 250px;
- Breite: 250px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Origin: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Mars*/
- .mars {
- links: 222,5px;
- oben: 392,5px;
- Höhe: 15px;
- Breite: 15px;
- Hintergrundfarbe: rgb(140,119,63);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 177,5px 7,5px;
- Animation: Drehung 11,75 s unendlich linear;
- }
-
- /*Marsumlaufbahn*/
- .marsOrbit {
- links: 230px;
- oben: 230px;
- Höhe: 340px;
- Breite: 340px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Ursprung: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Jupiter*/
- .jupiter {
- links: 134px;
- oben: 379px;
- Höhe: 42px;
- Breite: 42px;
- Hintergrundfarbe: RGB (156,164,143);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 266px 21px;
- Animation: Drehung 74,04 s unendlich linear;
- }
-
- /*Jupiterumlaufbahn*/
- .jupiterOrbit {
- links: 155px;
- oben: 155px;
- Höhe: 490px;
- Breite: 490px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Ursprung: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Saturn*/
- .saturn {
- links: 92px;
- oben: 387px;
- Höhe: 26px;
- Breite: 26px;
- Hintergrundfarbe: rgb(215,171,68);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 308px 13px;
- Animation: Drehung 183,92 s unendlich linear;
- }
-
- /*Saturnumlaufbahn*/
- .saturnOrbit {
- links: 105px;
- oben: 105px;
- Höhe: 590px;
- Breite: 590px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Ursprung: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Uranus*/
- .uranus {
- links: 41,5px;
- oben: 386,5px;
- Höhe: 27px;
- Breite: 27px;
- Hintergrundfarbe: RGB (164,192,206);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 358,5px 13,5px;
- Animation: 524,46 s unendlich linear rotieren;
- }
-
- /* Umlaufbahn des Uranus */
- .uranusOrbit {
- links: 55px;
- oben: 55px;
- Höhe: 690px;
- Breite: 690px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Ursprung: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- /*Neptun*/
- .neptun {
- links: 10px;
- oben: 390px;
- Höhe: 20px;
- Breite: 20px;
- Hintergrundfarbe: RGB (133,136,180);
- Randradius: 50 %;
- Position: absolut;
- Transform-Ursprung: 390px 10px;
- Animation: 1028,76 s unendlich linear rotieren;
- }
-
- /* Umlaufbahn des Neptuns */
- .neptuneOrbit {
- links: 20px;
- oben: 20px;
- Höhe: 760px;
- Breite: 760px;
- Hintergrundfarbe: transparent;
- Randradius: 50 %;
- Rahmenstil: gestrichelt;
- Rahmenfarbe: grau;
- Position: absolut;
- Rahmenbreite: 1px;
- /*Rand: 100px;*/
- /*Transform-Origin: -75px -75px;*/
- /*Animation: 4 s unendlich linear drehen;*/
- Rand: 0px;
- Polsterung: 0px;
- }
-
- @keyframes drehen {
- 100 % {
- transformieren: drehen (-360 Grad);
- }
- }
-
- </ Stil >
-
- </ Kopf >
- < Textkörper >
- < div Klasse = "Solarsys" >
-
- < div Klasse = "Sonne" > </ div >
-
-
- < div Klasse = "mercuryOrbit" > </ div >
-
-
- < div Klasse = "Merkur" > </ div >
-
-
- < div Klasse = "venusOrbit" > </ div >
-
-
- < div Klasse = "Venus" > </ div >
-
-
- < div Klasse = "earthOrbit" > </ div >
-
-
- < div Klasse = "Erde" > </ div >
-
-
- < div Klasse = "marsOrbit" > </ div >
-
-
- < div Klasse = "Mars" > </ div >
-
-
- < div Klasse = "JupiterOrbit" > </ div >
-
-
- < div Klasse = "Jupiter" > </ div >
-
-
- < div Klasse = "SaturnOrbit" > </ div >
-
-
- < div Klasse = "Saturn" > </ div >
-
-
- < div Klasse = "uranusOrbit" > </ div >
-
-
- < div Klasse = "Uranus" > </ div >
-
-
- < div Klasse = "neptuneOrbit" > </ div >
-
-
- < div Klasse = "Neptun" > </ div >
- </div>
- </ Körper >
- </ html >
Der obige HTML+CSS3-Code zur Implementierung des Animationseffekts der Planeten des Sonnensystems ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen. |