1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| div.item div{ --borderWidth: 12px; --bRadius: 5px; width: 60%; height: 60%; position: relative; z-index: 0; overflow: hidden; padding: 2rem; z-index: 0; border-radius: --bRadius;
&::after, &::before { box-sizing: border-box; }
&::before { content: ''; position: absolute; left: -50%; top: -50%; width: 200%; height: 200%; z-index: -2; background-repeat: no-repeat; background-size: 50% 50%, 50% 50%; background-position: 0 0, 100% 0, 100% 100%, 0 100%; background-image: linear-gradient(#399953, #399953), linear-gradient(#fbb300, #fbb300), linear-gradient(#d53e33, #d53e33), linear-gradient(#377af5, #377af5); animation: rotate 4s linear infinite; @keyframes rotate { 100% { transform: rotate(1turn); } } } &::after { content: ''; position: absolute; z-index: -1; left: calc(var(--borderWidth) / 2); top: calc(var(--borderWidth) / 2); width: calc(100% - var(--borderWidth)); height: calc(100% - var(--borderWidth)); background: white; border-radius: --bRadius; animation: opacityChange 3s infinite alternate; } @keyframes opacityChange { 50% { opacity:1; } 100% { opacity: .5; } } }
|