Start Coding
All
Accordion
Buttons
Cards
Carousel
Css Animation
Hexagons
Hover
Layout
Loaders
Menu
Navigation
Slider
Tables
Wave
All
body { background: #222; } .box { background-color: #61ab20; margin: 0 auto; width: 500px; height: 300px; position: relative; box-shadow: inset 0 0 3px #000; border-radius: 5px; border: 1px solid #111; overflow: hidden; } .box b { display: block; width: 20px; height: 20px; border-radius: 50%; background-color: #3673cf; box-shadow: inset -5px -5px 5px rgba(0,0,0,.6), 15px 15px 2px rgba(0,0,0,.04); position: absolute; -webkit-animation: moveX 3.05s linear 0s infinite alternate, moveY 3.4s linear 0s infinite alternate; -moz-animation: moveX 3.05s linear 0s infinite alternate, moveY 3.4s linear 0s infinite alternate; -o-animation: moveX 3.05s linear 0s infinite alternate, moveY 3.4s linear 0s infinite alternate; animation: moveX 3.05s linear 0s infinite alternate, moveY 3.4s linear 0s infinite alternate; } @-webkit-keyframes moveX { from { left: 0; } to { left: 480px; } } @-moz-keyframes moveX { from { left: 0; } to { left: 480px; } } @-o-keyframes moveX { from { left: 0; } to { left: 480px; } } @keyframes moveX { from { left: 0; } to { left: 480px; } } @-webkit-keyframes moveY { from { top: 0; } to { top: 280px; } } @-moz-keyframes moveY { from { top: 0; } to { top: 280px; } } @-o-keyframes moveY { from { top: 0; } to { top: 280px; } } @keyframes moveY { from { top: 0; } to { top: 280px; } }
66
CSS Bouncing Ball
By:
rald_dev
NEWS
.wrapper { margin: 50px auto; width: 280px; height: 370px; background: white; border-radius: 10px; -webkit-box-shadow: 0px 0px 8px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 8px rgba(0,0,0,0.3); box-shadow: 0px 0px 8px rgba(0,0,0,0.3); position: relative; z-index: 90; } .ribbon-wrapper-green { width: 85px; height: 88px; overflow: hidden; position: absolute; top: -3px; right: -3px; } .ribbon-green { font: bold 15px Sans-Serif; color: #333; text-align: center; text-shadow: rgba(255,255,255,0.5) 0px 1px 0px; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); position: relative; padding: 7px 0; left: -5px; top: 15px; width: 120px; background-color: #BFDC7A; background-image: -webkit-gradient(linear, left top, left bottom, from(#BFDC7A), to(#8EBF45)); background-image: -webkit-linear-gradient(top, #BFDC7A, #8EBF45); background-image: -moz-linear-gradient(top, #BFDC7A, #8EBF45); background-image: -ms-linear-gradient(top, #BFDC7A, #8EBF45); background-image: -o-linear-gradient(top, #BFDC7A, #8EBF45); color: #6a6340; -webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.3); -moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.3); box-shadow: 0px 0px 3px rgba(0,0,0,0.3); } .ribbon-green:before, .ribbon-green:after { content: ""; border-top: 3px solid #6e8900; border-left: 3px solid transparent; border-right: 3px solid transparent; position:absolute; bottom: -3px; } .ribbon-green:before { left: 0; } .ribbon-green:after { right: 0; }
65
Card Corner Ribbon
By:
pixeldev
Neon button
Neon button
Neon button
*{ margin: 0; padding: 0; box-sizing: border-box; } body{ display: flex; justify-content: center; align-items: center; height: 100vh; background: #050801; font-family: 'Raleway', sans-serif; font-weight: bold; } a{ position: relative; display: inline-block; padding: 25px 30px; margin: 40px 0; color: #03e9f4; text-decoration: none; text-transform: uppercase; transition: 0.5s; letter-spacing: 4px; overflow: hidden; margin-right: 50px; } a:hover{ background: #03e9f4; color: #050801; box-shadow: 0 0 5px #03e9f4, 0 0 25px #03e9f4, 0 0 50px #03e9f4, 0 0 200px #03e9f4; -webkit-box-reflect:below 1px linear-gradient(transparent, #0005); } a:nth-child(1){ filter: hue-rotate(270deg); } a:nth-child(2){ filter: hue-rotate(110deg); } a span{ position: absolute; display: block; } a span:nth-child(1){ top: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(90deg,transparent,#03e9f4); animation: animate1 1s linear infinite; } @keyframes animate1{ 0%{ left: -100%; } 50%,100%{ left: 100%; } } a span:nth-child(2){ top: -100%; right: 0; width: 2px; height: 100%; background: linear-gradient(180deg,transparent,#03e9f4); animation: animate2 1s linear infinite; animation-delay: 0.25s; } @keyframes animate2{ 0%{ top: -100%; } 50%,100%{ top: 100%; } } a span:nth-child(3){ bottom: 0; right: 0; width: 100%; height: 2px; background: linear-gradient(270deg,transparent,#03e9f4); animation: animate3 1s linear infinite; animation-delay: 0.50s; } @keyframes animate3{ 0%{ right: -100%; } 50%,100%{ right: 100%; } } a span:nth-child(4){ bottom: -100%; left: 0; width: 2px; height: 100%; background: linear-gradient(360deg,transparent,#03e9f4); animation: animate4 1s linear infinite; animation-delay: 0.75s; } @keyframes animate4{ 0%{ bottom: -100%; } 50%,100%{ bottom: 100%; } }
65
Glowing buttons
By:
rald_dev
Home
About
Info
Contact
/*reset */ body { margin: 0; padding: 0; background: #232323; color: #cdcdcd; font-family: "Avenir Next", "Avenir", sans-serif; } #hamburger { display: block; position: relative; top: 50px; left: 50px; z-index: 1; -webkit-user-select: none; user-select: none; } #hamburger a { text-decoration: none; color: #232323; transition: color 0.3s ease; } #hamburger a:hover { color: tomato; } #hamburger input { display: block; width: 40px; height: 32px; position: absolute; top: -7px; left: -5px; cursor: pointer; opacity: 0; /*hiding menu*/ z-index: 2; /*place it over the hamburger*/ -webkit-touch-callout: none; } /*span hamburger*/ #hamburger span { display: block; width: 33px; height: 4px; margin-bottom: 5px; position: relative; background: #cdcdcd; border-radius: 3px; z-index: 1; transform-origin: 4px 0px; transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease; } #hamburger span:first-child { transform-origin: 0% 0%; } #hamburger span:nth-last-child(2) { transform-origin: 0% 100%; } /*transform to cross mark*/ #hamburger input:checked ~ span { opacity: 1; transform: rotate(45deg) translate(-2px, -1px); background: #232323; } /* hinding middle bar */ #hamburger input:checked ~ span:nth-last-child(3) { opacity: 0; transform: rotate(0deg) scale(0.2, 0.2); } /* last bar opposite direction */ #hamburger input:checked ~ span:nth-last-child(2) { transform: rotate(-45deg) translate(0, -1px); } /* make the absolute positioned, at the top of the screen */ #menu { position: absolute; width: 300px; margin: 50px; padding-top: 125px; background: #ededed; list-style-type: none; -webkit-font-smoothing: antialiased; /* to stop flickering of text in safari */ transform-origin: 0% 0%; transform: translate(-100%, 0); transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1); } #menu li { padding: 10px 0; font-size: 22px; } /* slide from the left */ #hamburger input:checked ~ ul { transform: none; }
64
Hamburger Menu v2
By:
rald_dev
body{ background: #373940; } .socket{ width: 200px; height: 200px; position: absolute; left: 50%; margin-left: -100px; top: 50%; margin-top: -100px; } .hex-brick{ background: #ABF8FF; width: 30px; height: 17px; position: absolute; top: 5px; animation-name: fade; animation-duration: 2s; animation-iteration-count: infinite; -webkit-animation-name: fade; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; } .h2{ transform: rotate(60deg); -webkit-transform: rotate(60deg); } .h3{ transform: rotate(-60deg); -webkit-transform: rotate(-60deg); } .gel{ height: 30px; width: 30px; transition: all .3s; -webkit-transition: all .3s; position: absolute; top: 50%; left: 50%; } .center-gel{ margin-left: -15px; margin-top: -15px; animation-name: pulse; animation-duration: 2s; animation-iteration-count: infinite; -webkit-animation-name: pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; } .c1{ margin-left: -47px; margin-top: -15px; } .c2{ margin-left: -31px; margin-top: -43px; } .c3{ margin-left: 1px; margin-top: -43px; } .c4{ margin-left: 17px; margin-top: -15px; } .c5{ margin-left: -31px; margin-top: 13px; } .c6{ margin-left: 1px; margin-top: 13px; } .c7{ margin-left: -63px; margin-top: -43px; } .c8{ margin-left: 33px; margin-top: -43px; } .c9{ margin-left: -15px; margin-top: 41px; } .c10{ margin-left: -63px; margin-top: 13px; } .c11{ margin-left: 33px; margin-top: 13px; } .c12{ margin-left: -15px; margin-top: -71px; } .c13{ margin-left: -47px; margin-top: -71px; } .c14{ margin-left: 17px; margin-top: -71px; } .c15{ margin-left: -47px; margin-top: 41px; } .c16{ margin-left: 17px; margin-top: 41px; } .c17{ margin-left: -79px; margin-top: -15px; } .c18{ margin-left: 49px; margin-top: -15px; } .c19{ margin-left: -63px; margin-top: -99px; } .c20{ margin-left: 33px; margin-top: -99px; } .c21{ margin-left: 1px; margin-top: -99px; } .c22{ margin-left: -31px; margin-top: -99px; } .c23{ margin-left: -63px; margin-top: 69px; } .c24{ margin-left: 33px; margin-top: 69px; } .c25{ margin-left: 1px; margin-top: 69px; } .c26{ margin-left: -31px; margin-top: 69px; } .c27{ margin-left: -79px; margin-top: -15px; } .c28{ margin-left: -95px; margin-top: -43px; } .c29{ margin-left: -95px; margin-top: 13px; } .c30{ margin-left: 49px; margin-top: 41px; } .c31{ margin-left: -79px; margin-top: -71px; } .c32{ margin-left: -111px; margin-top: -15px; } .c33{ margin-left: 65px; margin-top: -43px; } .c34{ margin-left: 65px; margin-top: 13px; } .c35{ margin-left: -79px; margin-top: 41px; } .c36{ margin-left: 49px; margin-top: -71px; } .c37{ margin-left: 81px; margin-top: -15px; } .r1{ animation-name: pulse; animation-duration: 2s; animation-iteration-count: infinite; animation-delay: .2s; -webkit-animation-name: pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-delay: .2s; } .r2{ animation-name: pulse; animation-duration: 2s; animation-iteration-count: infinite; animation-delay: .4s; -webkit-animation-name: pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-delay: .4s; } .r3{ animation-name: pulse; animation-duration: 2s; animation-iteration-count: infinite; animation-delay: .6s; -webkit-animation-name: pulse; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-delay: .6s; } .r1 > .hex-brick{ animation-name: fade; animation-duration: 2s; animation-iteration-count: infinite; animation-delay: .2s; -webkit-animation-name: fade; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-delay: .2s; } .r2 > .hex-brick{ animation-name: fade; animation-duration: 2s; animation-iteration-count: infinite; animation-delay: .4s; -webkit-animation-name: fade; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-delay: .4s; } .r3 > .hex-brick{ animation-name: fade; animation-duration: 2s; animation-iteration-count: infinite; animation-delay: .6s; -webkit-animation-name: fade; -webkit-animation-duration: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-delay: .6s; } @keyframes pulse{ 0%{ -webkit-transform: scale(1); transform: scale(1); } 50%{ -webkit-transform: scale(0.01); transform: scale(0.01); } 100%{ -webkit-transform: scale(1); transform: scale(1); } } @keyframes fade{ 0%{ background: #ABF8FF; } 50%{ background: #90BBBF; } 100%{ background: #ABF8FF; } } @-webkit-keyframes pulse{ 0%{ -webkit-transform: scale(1); transform: scale(1); } 50%{ -webkit-transform: scale(0.01); transform: scale(0.01); } 100%{ -webkit-transform: scale(1); transform: scale(1); } } @-webkit-keyframes fade{ 0%{ background: #ABF8FF; } 50%{ background: #389CA6; } 100%{ background: #ABF8FF; } }
64
Hexagonal Loading Animation
By:
rald_dev
*{ margin: 0; box-sizing: border-box; } .box{ height: 80px; width: 100%; border-bottom: 1px solid gray; display: flex; align-items: center; } .item{ height: 60px; width: 60px; border-radius: 50%; background-color: #00005e; animation: move 2s 0s infinite ease-in-out; } section { padding: 10px 20px; width: 100%; background-color: black; } @keyframes move { /* 0%{ transform: translateX(0%); } */ 100%{ transform: translateX(600px); } } .reverse{ animation-direction: reverse; } .alternate{ animation-direction: alternate; } .alternate-reverse{ animation-direction: alternate-reverse; }
63
Simple Slide Animation
By:
rald_dev
Video
09 February 2019
Button - Fluent Design-Like
button
Shot
29 March 2019
Task List
task-list
app
Video
16 April 2019
Radio Buttons
Radio
Video
27 April 2019
User Interface - Flip Card
card
Video
14 July 2019
Link & Button - Shatter Effect
link
button
Video
18 August 2019
Switches
switch
Video
24 August 2019
Modal
modal
Video
26 August 2019
Modals (Modal v2)
modal
Video
29 August 2019
Off-Screen Menu
nav
menu
Video
06 November 2019
Parallax Tilt Effect Cards
card
tilt-effects
Video
11 November 2019
Plant App: Sign Up UI
app
animation
Video
23 December 2019
Block Revealing Effect
text
revealing-effect
dlar_dev-cards
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;700&display=swap'); /* DEFAULTS */ /* ================================================================================= */ *, *::before, *::after { box-sizing: border-box; } body { display: grid; place-content: center; min-height: 100vh; font-family: "Fira Sans", -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; margin: 0; } /* CARDS */ /* ================================================================================= */ .cards { display: flex; align-items: center; padding: 40px; overflow-x: scroll; min-height: 100vh; } .card { min-width: 300px; max-width: 300px; height: 400px; margin-left: -80px; border-radius: 40px; padding: 30px; box-shadow: -4px 4px 26px 2px hsla(184, 50%, 20%, .1); background: linear-gradient(to right bottom, hsl(0, 0%, 98%), hsl(0, 0%, 96%)); transition: all .3s; position: relative; } .card:first-child { margin-left: 0; } .card:hover, .card:focus-within { transform: translateY(-20px) } .card:hover+.card, .card:focus-within+.card { transform: translateX(80px); } .card-info { margin-bottom: 14px; } .card-info>span:first-child { margin-right: 6px; } .card-grad--video { color: transparent; background: linear-gradient(to right, hsl(91, 96%, 50%), hsl(159, 96%, 50%)); background-clip: text; } .card-grad--shot { color: transparent; background: linear-gradient(to right, hsl(294, 96%, 50%), hsl(201, 96%, 50%)); background-clip: text; } .card-info>span:last-child { color: hsl(0, 0%, 70%); } .card-heading { font-size: 1.6em; } .card-heading a:link { color: hsl(30, 50%, 40%); font-weight: bold; text-decoration: none; } .card-tags { display: flex; position: absolute; bottom: 50px; left: 30px; } .card-tag { color: hsl(0, 0%, 60%); padding: 5px 12px; border: 2px solid hsl(30, 40%, 70%); border-radius: 100px; text-transform: uppercase; margin-right: 10px; font-size: .9em; } /* ABS */ /* ================================================================================= */ .abs-site-link { position: fixed; bottom: 20px; left: 20px; color: hsla(0, 0%, 0%, .6); font-size: 16px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Open Sans', sans-serif; }
63
Cards Animation
By:
rald_dev
:root { --sqrt3: 1.73205080757; /* Square root of 3 */ --time: 11; /* Duration of animation */ --gap: 1; /* Horizontal gap between hexagons */ --radius: 3; /* Radius of inscribed circle */ --Gap: var(--gap) / 2 * var(--sqrt3); /* Vertical gap between hexagons */ --Radius: 2 / var(--sqrt3) * var(--radius); /* Radius of circumcircle */ } @keyframes odd-animation { 0% { transform: translate(calc( 0.5 * var(--offset-x) ), calc( 0.5 * var(--offset-y) )) scale(0) } 33% { transform: translate(calc( 1 * var(--offset-x) ), calc( 1 * var(--offset-y) )) scale(1) } 66% { transform: translate(calc( 2 * var(--offset-x) ), calc( 2 * var(--offset-y) )) scale(1) } 100% { transform: translate(calc( 3 * var(--offset-x) ), calc( 3 * var(--offset-y) )) scale(0) } } @keyframes even-animation { 50% { transform: translate(calc( 1 * var(--offset-x) ), calc( 1 * var(--offset-y) )) scale(1) } 100% { transform: translate(calc( 2 * var(--offset-x) ), calc( 2 * var(--offset-y) )) scale(0) } } body { align-items: center; background-color: black; display: flex; height: 100vh; justify-content: center; overflow: hidden; margin: 0; } .hex { color: white; display: flex; font-size: 3vmin; height: calc(2em * var(--Radius)); width: calc(2em * var(--radius)); } .hex::before { border: calc(0.5em * var(--Radius)) solid transparent; border-left: 0; border-right: calc(1em * var(--radius)) solid currentColor; content: ""; height: var(--Radius); } .hex::after { border: calc(0.5em * var(--Radius)) solid transparent; border-left: calc(1em * var(--radius)) solid currentColor; border-right: 0; content: ""; height: var(--Radius); } .center { position: relative; } .odd, .even { --global-offset-x: calc( 0.5em * var(--gap) + var(--radius) * 1em); --global-offset-y: calc( 1.5em * var(--Radius) + var(--Gap) * 1em); animation: infinite cubic-bezier(.21, .61, .01, .89); position: absolute; transform: translate(0, 0) scale(0); } .odd { animation-duration: 11s; } .even { animation-duration: 7.333333333s; } .hex.first { animation-delay: -6.2857142857s; } .hex.second { animation-delay: -2.619047619s; } .hex.third { animation-delay: 1.0476190476s; } @supports (animation-delay: calc(1 * 1s)) and (animation-duration: calc(1 * 1s)) { .odd { animation-duration: calc(var(--time) * 1s); } .even { animation-duration: calc( var(--time) * 2 / 3 * 1s); } .hex.first { animation-delay: calc( var(--time) / -1.75 * 1s ); } .hex.second { animation-delay: calc( var(--time) * 1.25 / -5.25 * 1s ); } .hex.third { animation-delay: calc( var(--time) * -0.25 / -2.625 * 1s ); } } .hex.one { --offset-x: calc( var(--global-offset-x) * 1 ); --offset-y: calc( var(--global-offset-y) * -1 ); animation-name: odd-animation; bottom: 0; left: 0; } .hex.two { --offset-x: calc( var(--global-offset-x) * 1.5 ); --offset-y: calc( var(--global-offset-y) * -0.5 ); animation-name: even-animation; bottom: calc( var(--global-offset-y) * 0.5 ); left: calc( var(--global-offset-x) * 1.5 ); } .hex.three { --offset-x: calc( var(--global-offset-x) * 2 ); --offset-y: calc( var(--global-offset-y) * 0 ); animation-name: odd-animation; bottom: 0; right: 0; } .hex.four { --offset-x: calc( var(--global-offset-x) * 1.5 ); --offset-y: calc( var(--global-offset-y) * 0.5 ); animation-name: even-animation; top: calc( var(--global-offset-y) * 0.5 ); left: calc( var(--global-offset-x) * 1.5 ); } .hex.five { --offset-x: calc( var(--global-offset-x) * 1 ); --offset-y: calc( var(--global-offset-y) * 1 ); animation-name: odd-animation; top: 0; left: 0; } .hex.six { --offset-x: calc( var(--global-offset-x) * 0 ); --offset-y: calc( var(--global-offset-y) * 1 ); animation-name: even-animation; top: calc( var(--global-offset-y) * 1 ); left: 0; } .hex.seven { --offset-x: calc( var(--global-offset-x) * -1 ); --offset-y: calc( var(--global-offset-y) * 1 ); animation-name: odd-animation; top: 0; right: 0; } .hex.eight { --offset-x: calc( var(--global-offset-x) * -1.5 ); --offset-y: calc( var(--global-offset-y) * 0.5 ); animation-name: even-animation; top: calc( var(--global-offset-y) * 0.5 ); right: calc( var(--global-offset-x) * 1.5 ); } .hex.nine { --offset-x: calc( var(--global-offset-x) * -2 ); --offset-y: calc( var(--global-offset-y) * 0 ); animation-name: odd-animation; top: 0; right: 0; } .hex.ten { --offset-x: calc( var(--global-offset-x) * -1.5 ); --offset-y: calc( var(--global-offset-y) * -0.5 ); animation-name: even-animation; bottom: calc( var(--global-offset-y) * 0.5 ); right: calc( var(--global-offset-x) * 1.5 ); } .hex.eleven { --offset-x: calc( var(--global-offset-x) * -1 ); --offset-y: calc( var(--global-offset-y) * -1 ); animation-name: odd-animation; bottom: 0; right: 0; } .hex.twelve { --offset-x: calc( var(--global-offset-x) * 0 ); --offset-y: calc( var(--global-offset-y) * -1 ); animation-name: even-animation; bottom: calc( var(--global-offset-y) * 1 ); left: 0; }
63
Hexagon Animation
By:
rald_dev
Front
body{ width: 1366px; height:1366px; background:; } .first{ width: 475px; height: 217px; background: green; transform: rotate(90deg) rotateX(90deg) rotateZ(0deg) translate3d(4px,0px,-87px); overflow: hidden; visibility: hidden; position: absolute; transition: all 0.5s ease; } .first2{ width: 475px; height: 217px; background: green; transform: rotate(90deg) rotateX(90deg) rotateZ(0deg) translate3d(4px,0px,-238px); overflow: hidden; visibility: hidden; position: absolute; transition: all 0.5s ease; } .second{ width: 500px; height: 216px; background: red; transform: rotate(-60deg); overflow: hidden; } .third{ width: 500px; height: 216px; background:orange; background-position: center; background-size: 80%; transform: rotate(-60deg); overflow: hidden; visibility: visible; } .sides{ width: 150px; height: 125px; background: gray; position: absolute; } .s1{ transform: rotateX(60deg) translate3d(0px,31px,-162px); background: red; } .sides.s2 { transform: rotateX(-60deg)translate3d(0px, 31px, -54px); background: blue; } .s3{ transform: rotateX(60deg) translate3d(0px, 32px, 54px); background: green; } .s4{ transform: rotateX(-60deg) translate3d(0px, 32px, 161px); background: #9C27B0; } .s5{ background: gray; transform: translate3d(0px, 62px, 108px); } .s6{ background: darkgray; } .sides.S6{ transform: translate3d(0px, 62px, -109px); } @keyframes rotate{ 0%{transform: rotateY(0deg) rotateX(0deg) ;} 100%{transform: rotateY(360deg) rotateX(360deg);} } .main{ width: 250px; height: 250px; perspective: 800px; } .cube{ width: 150px; height: 250px; margin-left: 250px; background:; transform-style: preserve-3d; transform: rotateY(70deg); animation: rotate 15s linear infinite; }
63
3D Hexagon Animation
By:
rald_dev
Simple CSS loaders
single html element css animation
.loader { --color: white; --size-mid: 6vmin; --size-dot: 1.5vmin; --size-bar: 0.4vmin; --size-square: 3vmin; display: block; position: relative; width: 50%; display: grid; place-items: center; } .loader::before, .loader::after { content: ''; box-sizing: border-box; position: absolute; } /** loader --1 **/ .loader.--1::before { width: var(--size-mid); height: var(--size-mid); border: 4px solid var(--color); border-top-color: transparent; border-radius: 50%; animation: loader-1 1s linear infinite; } .loader.--1::after { width: calc(var(--size-mid) - 2px); height: calc(var(--size-mid) - 2px); border: 2px solid transparent; border-top-color: var(--color); border-radius: 50%; animation: loader-1 0.6s linear reverse infinite; } @keyframes loader-1 { 100% { transform: rotate(1turn); } } /** loader --2 **/ .loader.--2::before, .loader.--2::after { width: var(--size-dot); height: var(--size-dot); background-color: var(--color); border-radius: 50%; opacity: 0; animation: loader-2 0.8s cubic-bezier(0.2, 0.32, 0, 0.87) infinite; } .loader.--2::after { animation-delay: 0.3s; } @keyframes loader-2 { 0%, 80%, 100% { opacity: 0; } 33% { opacity: 1; } 0%, 100% { transform: translateX(-4vmin); } 90% { transform: translateX(4vmin); } } /** loader --3 **/ .loader.--3::before, .loader.--3::after { width: var(--size-dot); height: var(--size-dot); background-color: var(--color); border-radius: 50%; animation: loader-3 1.2s ease-in-out infinite; } .loader.--3::before { left: calc(50% - 1.6vmin - var(--size-dot)); } .loader.--3::after { left: calc(50% + 1.6vmin); animation-delay: -0.4s; } @keyframes loader-3 { 0%, 100% { transform: translateY(-2.6vmin); } 44% { transform: translateY(2.6vmin); } } /** loader --4 **/ .loader.--4::before { height: var(--size-bar); width: 6vmin; background-color: var(--color); animation: loader-4 0.8s cubic-bezier(0, 0, 0.03, 0.9) infinite; } @keyframes loader-4 { 0%, 44%, 88.1%, 100% { transform-origin: left; } 0%, 100%, 88% { transform: scaleX(0); } 44.1%, 88% { transform-origin: right; } 33%, 44% { transform: scaleX(1); } } /** loader --5 **/ .loader.--5::before, .loader.--5::after { height: 3vmin; width: var(--size-bar); background-color: var(--color); animation: loader-5 0.6s cubic-bezier(0, 0, 0.03, 0.9) infinite; } .loader.--5::before { left: calc(50% - 1vmin); top: calc(50% - 3vmin); } .loader.--5::after { left: calc(50% + 1vmin); top: calc(50% - 1vmin); animation-delay: 0.2s; } @keyframes loader-5 { 0%, 88%, 100% { opacity: 0; } 0% { transform: translateY(-6vmin); } 33% { opacity: 1; } 33%, 88% { transform: translateY(3vmin); } } /** loader --6 **/ .loader.--6::before { width: var(--size-square); height: var(--size-square); background-color: var(--color); top: calc(50% - var(--size-square)); left: calc(50% - var(--size-square)); animation: loader-6 2.4s cubic-bezier(0, 0, 0.24, 1.21) infinite; } @keyframes loader-6 { 0%, 100% { transform: none; } 25% { transform: translateX(100%); } 50% { transform: translateX(100%) translateY(100%); } 75% { transform: translateY(100%); } } /** loader --7 **/ .loader.--7::before, .loader.--7::after { width: var(--size-square); height: var(--size-square); background-color: var(--color); } .loader.--7::before { top: calc(50% - var(--size-square)); left: calc(50% - var(--size-square)); animation: loader-6 2.4s cubic-bezier(0, 0, 0.24, 1.21) infinite; } .loader.--7::after { top: 50%; left: 50%; animation: loader-7 2.4s cubic-bezier(0, 0, 0.24, 1.21) infinite; } @keyframes loader-7 { 0%, 100% { transform: none; } 25% { transform: translateX(-100%); } 50% { transform: translateX(-100%) translateY(-100%); } 75% { transform: translateY(-100%); } } /** loader --8 **/ .loader.--8::before, .loader.--8::after { width: var(--size-dot); height: var(--size-dot); border-radius: 50%; background-color: var(--color); } .loader.--8::before { top: calc(50% + 4vmin); animation: loader-8-1 0.8s cubic-bezier(0.06, 0.01, 0.49, 1.18) infinite; } .loader.--8::after { opacity: 0; top: calc(50% - 2vmin); animation: loader-8-2 0.8s cubic-bezier(0.46,-0.1, 0.27, 1.07) 0.2s infinite; } @keyframes loader-8-1 { 0%, 55%, 100% { opacity: 0; } 0% { transform: scale(0.2); } 22% { opacity: 1; } 33%, 55% { transform: scale(1) translateY(-6vmin); } } @keyframes loader-8-2 { 0%, 100% { opacity: 0; } 33% { opacity: 0.3; } 0% { transform: scale(0); } 100% { transform: scale(4); } } /** loader --9 **/ .loader.--9::before, .loader.--9::after { width: var(--size-dot); height: var(--size-dot); border-radius: 50%; background-color: var(--color); animation: loader-9 0.42s cubic-bezier(0.39, 0.31, 0, 1.11) infinite; } .loader.--9::before { left: calc(50% - var(--size-dot) - 1.6vmin); } .loader.--9::after { left: calc(50% + 1.6vmin); animation-delay: 0.12s; } @keyframes loader-9 { 0%, 100% { opacity: 0; } 0% { transform: translate(-4vmin, -4vmin); } 66% { opacity: 1; } 66%, 100% { transform: none; } } /** miscs **/ .container { display: grid; grid-template-columns: repeat(3, 18vmin); grid-template-rows: repeat(3, 18vmin); grid-gap: 1vmin; } .item { background: rgba(255, 255, 255, 0.1); display: grid; place-items: center; border-radius: 4px; transition: opacity 0.4s ease; } .container:hover .item { opacity: 0.3; } .container:hover .item:hover { opacity: 1; } .page { margin: auto; } .header { margin-bottom: 4vmin; } .header-title { font-size: 3.75vmin; } .header-subtitle { font-size: 2vmin; text-transform: uppercase; opacity: 0.6; } html, body { display: flex; width: 100%; height: 100%; background-image: linear-gradient(to right top, #051937, #004d7a, #008793, #00bf72, #a8eb12); font-family: 'Noto Sans', sans-serif; color: white; text-align: center; letter-spacing: 0.3px; }
63
Simple CSS loaders
By:
rald_dev
I'm a bouncing text
@keyframes bounce { 0%, 30%, 50%, 100% { transform: translateY(0); } 60%, 80% { transform: translateY(-50%) } 20%, 40% { transform: translateY(-100%); } } .container-div { width: 200px; text-align: center; background-color: green; padding: 5px; margin: 0 auto; } .p-bounce { color: white; animation-name: bounce; animation-duration: 1s; animation-iteration-count: infinite; }
62
Bouncing text
By:
rald_dev
header
nav
section
/* Note: This example only works with Windows Insider Preview Builds 16237+ or the Fall Creators Update. */ body { font-family: segoe-ui_normal,Segoe UI,Segoe,Segoe WP,Helvetica Neue,Helvetica,sans-serif; display: grid; grid-template-areas: "header header header" "nav section aside" "footer footer footer"; grid-template-rows: 80px 1fr 50px; grid-template-columns: 15% 1fr 18%; grid-gap: 5px; height: 100vh; margin: 10px; } header { background: #707070; grid-area: header; } nav { background: #C9BFBF; grid-area: nav; } section { background: #ABABAB; grid-area: section; } aside { background: #C9C9C9; grid-area: aside; } footer { background: #707070; grid-area: footer; } header, nav, section, aside, footer { padding: 5px; }
62
CSS Grid Layout
By:
rald_dev
Previous
1
2
3
4
5
6
…
10
Next