Heim > Web-Frontend > js-Tutorial > Hauptteil

Verwendung von CSS zur Implementierung von Tischtennis-Kampfanimationen

php中世界最好的语言
Freigeben: 2018-05-24 10:55:08
Original
1823 Leute haben es durchsucht

Dieses Mal werde ich Ihnen die Vorsichtsmaßnahmen zur Verwendung von CSS zur Realisierung von Tischtennis-Kampfanimationen vorstellen. Das Folgende ist ein praktischer Fall.

Code-Interpretation

Dom definieren, der Container enthält linken Schläger, kleinen Ball und rechten Schläger:

<p class="court">
    <p class="left-paddle"></p>
    <p class="ball"></p>
    <p class="right-paddle"></p>
</p>
Nach dem Login kopieren

Zentrierte Anzeige:

body {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(silver, dimgray);
}
Nach dem Login kopieren

Anpassung Boxmodell :

* {
    box-sizing: border-box;
}
Nach dem Login kopieren

Zeichnen Sie den Balltisch:

.court {
    width: 20em;
    height: 20em;
    color: white;
    border: 1em solid currentColor;
}
Nach dem Login kopieren

Zeichnen Sie den linken Schläger:

.court {
    position: relative;
}
.left-paddle
    width: 1em;
    height: calc(50% - 1em);
    background-color: currentColor;
    position: absolute;
    top: 1em;
    left: 1em;
}
Nach dem Login kopieren

Bewegen Sie den linken Schläger:

.left-paddle {
    animation: left-moving 1s linear infinite alternate;
}
@keyframes left-moving {
    to {
        transform: translateY(100%);
    }
}
Nach dem Login kopieren

Zeichnen Sie in ähnlicher Weise den rechten Klatschbewegung:

.right-paddle
    width: 1em;
    height: calc(50% - 1em);
    background-color: currentColor;
    position: absolute;
    top: 1em;
    left: 1em;
    bottom: 1em;
    right: 1em;
}
Nach dem Login kopieren

Führen Sie in ähnlicher Weise die rechte Klatschbewegung aus:

.right-paddle {
    animation: right-moving 1s linear infinite alternate;
}
@keyframes right-moving {
    to {
        transform: translateY(-100%);
    }
}
Nach dem Login kopieren

Zeichnen Sie den Ball:

.ball {
    width: 100%;
    height: 1em;
    border-left: 1em solid currentColor;
    position: absolute;
    left: 2em;
    top: calc(50% - 1.5em);
}
Nach dem Login kopieren

Machen Sie den Ball in Bewegung:

.ball {
    animation: bounce 1s linear infinite alternate;
}
@keyframes bounce {
    to {
        left: calc(100% - 3em);
    }
}
Nach dem Login kopieren

Umgestalten Sie abschließend den linken und rechten Aufnahmecode und führen Sie die gemeinsamen Attribute zusammen:

.left-paddle,
.right-paddle {
    width: 1em;
    height: calc(50% - 1em);
    background-color: currentColor;
    position: absolute;
    animation: 1s linear infinite alternate;
}
.left-paddle {
    top: 1em;
    left: 1em;
    animation-name: left-moving;
}
.right-paddle {
    bottom: 1em;
    right: 1em;
    animation-name: right-moving;
}
Nach dem Login kopieren

Fertig!

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Anwendungsfallanalyse der leichten Diagrammbibliothek von Chart.js

https-Verwendung in der Fallanalyse von Node.js

Das obige ist der detaillierte Inhalt vonVerwendung von CSS zur Implementierung von Tischtennis-Kampfanimationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
css
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!