Toto jednoduché demo vysvětluje, jak používat CSS animace pro zajímavé vizuální efekty.
Přidání animovaného pozadí na váš web nebo aplikaci může přispět k jedinečnému a zajímavému designu. Kreativní pozadí může vyvolat emoce a zlepšit uživatelský zážitek.
Existuje mnoho způsobů, jak vytvořit animované pozadí pro vaši aplikaci, ale obzvláště dobře funguje jednoduchá kombinace prostého HTML a CSS. Podívejte se na tento příklad, zjistěte, jak funguje jeho kód, a podívejte se na živé demo konečného animovaného pozadí.
Vytvořte strukturu HTML
Vytvoříte modré pozadí s bublinami, které rostou a vznášejí se nahoru. Konečný výsledek můžete vidět na tomto Codepen.
Začněte vytvořením a sekce se třídou obal umístit animaci.
Poté vytvořte 10 divů, které budou představovat bubliny. Uvnitř každého divu vytvořte pole s třídou tečka. Můžeš Naučte se tyto základní HTML tagy za 10 minut pokud s HTML začínáte.
<body>
<sectionclass="wrapper">
<h1>Animated Backgroundh1>
<div><spanclass="dot">span>div>
<div><spanclass="dot">
span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
<div><spanclass="dot">span>div>
section>
body>
Styl s CSS kódem
Můžete vytvořit neuvěřitelné efekty na pozadí pouze pomocí HTML. Ale pro tento projekt použijete CSS ke stylování a animaci pozadí.
Nejprve nastavte okraj a odsazení na 0, aby kolem pozadí nebyly žádné mezery.
* {
margin: 0;
padding: 0;
}
Potom upravte styl nadřazené sekce pomocí třídy wrapper. Tato sekce bude mít 100% šířku a výšku, aby zaplnila celou stránku. Nastavte jeho barvu pozadí jako odstín modré a dejte mu absolutní pozici.
.wrapper {
height: 100%;
width: 100%;
background-color: #0066cc;
position: absolute;
}
Stylujte H1 také s absolutní pozicí. Chcete-li jej umístit do středu stránky, začněte nastavením jeho levé horní pozice na 50 %. Poté jej pomocí translate posuňte nahoru a doleva, aby byl jeho střed přesně uprostřed.
.wrapperh1 {
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
position: absolute;
font-family: sans-serif;
word-spacing: 2px;
color: #fff;
font-size: 2rem;
font-weight: 900;
}
Dále upravte styl divů, které budou kruhové, aby fungovaly jako animované bubliny. Každému divu přiřaďte výšku, šířku a ohraničení. Velký poloměr okraje zajišťuje, že okraj je kruh. Také nastavte dobu trvání animace pomocí vlastnosti CSS animation.
.wrapperdiv {
height: 60px;
width: 60px;
border: 2pxsolidrgba(255, 255, 255, 0.7);
border-radius: 100px;
position: absolute;
top: 10%;
left: 10%;
animation: 4slinearinfinite;
}
Upravte styl teček s výškou a šířkou 5 pixelů. Dejte tečkám poloměr ohraničení a bílé pozadí. Každý z nich umístěte absolutně blízko pravého horního rohu jeho nadřazeného prvku div.
div.dot {
height: 5px;
width: 5px;
border-radius: 50px;
background: rgba(255, 255, 255, 0.5);
position: absolute;
top: 20%;
right: 20%;
}
Dále použijte selektor n-tého potomka k umístění každého prvku div s různým nastavením. Animaci můžete pojmenovat animovat; později jej definujete pomocí @keyframes.
Použití n-té dítě (2) oslovit první div od prvního dítěte .obal prvkem je h1.
.wrapperdiv:nth-child(2) {
top: 20%;
left: 20%;
animation: animate 8slinearinfinite;
}.wrapperdiv:nth-child(3) {
top: 60%;
left: 80%;
animation: animate 10slinearinfinite;
}.wrapperdiv:nth-child(4) {
top: 40%;
left: 40%;
animation: animate 3slinearinfinite;
}.wrapperdiv:nth-child(5) {
top: 66%;
left: 30%;
animation: animate 7slinearinfinite;
}
.wrapperdiv:nth-child(6) {
top: 90%;
left: 10%;
animation: animate 9slinearinfinite;
}
Nižším divům můžete přidělit vyšší procenta, aby stoupaly nahoru v různých intervalech.
.wrapperdiv:nth-child(7) {
top: 30%;
left: 60%;
animation: animate 5slinearinfinite;
}.wrapperdiv:nth-child(8) {
top: 70%;
left: 20%;
animation: animate 8slinearinfinite;
}.wrapperdiv:nth-child(9) {
top: 75%;
left: 60%;
animation: animate 10slinearinfinite;
}.wrapperdiv:nth-child(10) {
top: 50%;
left: 50%;
animation: animate 6slinearinfinite;
}
.wrapperdiv:nth-child(11) {
top: 45%;
left: 20%;
animation: animate 10slinearinfinite;
}
Pomocí @klíčových snímků můžete postupně měnit a otáčet kruhy a tečky v různých intervalech. V následujícím kódu se tečky otáčejí o 70 stupňů a kruhy o 360. Tato rotace vytváří bublinkový efekt.
@keyframes animate {
0% {
transform: scale(0) translateY(0) rotate(70deg);
}
100% {
transform: scale(1.3) translateY(-100px) rotate(360deg);
}
}
Můžeš udělejte pozadí stylovější pomocí vzorů CSS. Vzory vám umožňují vytvářet vlny, mřížky, listy a další vzory, které vám pomohou vytvářet úžasné animace.
Pomocí CSS můžete animovat mnoho vlastností
Pomocí CSS můžete vytvářet různé typy animací. Patří mezi ně změna barvy pozadí a zpoždění běhu animace.
Můžete také nastavit, jak často se má animace spouštět, dokonce až do nekonečna. Můžete také nastavit směr, kterým se má animace pohybovat: dopředu nebo dozadu. Je zábavné hrát si s animacemi a můžete je použít k oživení aplikací.