bismillahcss
Version:
The next-gen utility-first CSS framework for modern, futuristic web development.
758 lines (603 loc) • 11.8 kB
CSS
/* ========== BismillahCSS Animations ========== */
/* Fade Animations */
.bismillah-fade-in {
animation: bismillahFadeIn 0.5s ease-in-out forwards;
}
.bismillah-fade-out {
animation: bismillahFadeOut 0.5s ease-in-out forwards;
}
@keyframes bismillahFadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes bismillahFadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
/* Slide Animations */
.bismillah-slide-in-up {
animation: bismillahSlideInUp 0.5s ease-out forwards;
}
.bismillah-slide-in-down {
animation: bismillahSlideInDown 0.5s ease-out forwards;
}
.bismillah-slide-in-left {
animation: bismillahSlideInLeft 0.5s ease-out forwards;
}
.bismillah-slide-in-right {
animation: bismillahSlideInRight 0.5s ease-out forwards;
}
@keyframes bismillahSlideInUp {
from {
transform: translateY(30px);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
@keyframes bismillahSlideInDown {
from {
transform: translateY(-30px);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
@keyframes bismillahSlideInLeft {
from {
transform: translateX(-30px);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
@keyframes bismillahSlideInRight {
from {
transform: translateX(30px);
opacity: 0;
}
to {
transform: translateX(0);
opacity: 1;
}
}
/* Scale Animations */
.bismillah-scale-in {
animation: bismillahScaleIn 0.5s ease-out forwards;
}
.bismillah-scale-out {
animation: bismillahScaleOut 0.5s ease-in forwards;
}
@keyframes bismillahScaleIn {
from {
transform: scale(0.8);
opacity: 0;
}
to {
transform: scale(1);
opacity: 1;
}
}
@keyframes bismillahScaleOut {
from {
transform: scale(1);
opacity: 1;
}
to {
transform: scale(0.8);
opacity: 0;
}
}
/* Rotate Animations */
.bismillah-rotate-in {
animation: bismillahRotateIn 0.5s ease-out forwards;
}
.bismillah-spin {
animation: bismillahSpin 1s infinite linear;
}
@keyframes bismillahRotateIn {
from {
transform: rotate(-180deg) scale(0.5);
opacity: 0;
}
to {
transform: rotate(0) scale(1);
opacity: 1;
}
}
@keyframes bismillahSpin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
/* Bounce Animations */
.bismillah-bounce {
animation: bismillahBounce 1s infinite;
}
.bismillah-bounce-in {
animation: bismillahBounceIn 0.75s ease-out forwards;
}
@keyframes bismillahBounce {
0%,
100% {
transform: translateY(0);
}
50% {
transform: translateY(-15px);
}
}
@keyframes bismillahBounceIn {
0% {
transform: scale(0.3);
opacity: 0;
}
40% {
transform: scale(1.1);
opacity: 1;
}
60% {
transform: scale(0.9);
}
80% {
transform: scale(1.03);
}
100% {
transform: scale(1);
}
}
/* Pulse Animations */
.bismillah-pulse {
animation: bismillahPulse 2s infinite;
}
@keyframes bismillahPulse {
0% {
transform: scale(1);
}
50% {
transform: scale(1.05);
}
100% {
transform: scale(1);
}
}
/* Shake Animations */
.bismillah-shake {
animation: bismillahShake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
@keyframes bismillahShake {
10%,
90% {
transform: translate3d(-1px, 0, 0);
}
20%,
80% {
transform: translate3d(2px, 0, 0);
}
30%,
50%,
70% {
transform: translate3d(-4px, 0, 0);
}
40%,
60% {
transform: translate3d(4px, 0, 0);
}
}
/* Heartbeat Animation */
.bismillah-heartbeat {
animation: bismillahHeartbeat 1.5s ease-in-out infinite;
}
@keyframes bismillahHeartbeat {
0% {
transform: scale(1);
}
14% {
transform: scale(1.15);
}
28% {
transform: scale(1);
}
42% {
transform: scale(1.15);
}
70% {
transform: scale(1);
}
}
/* Flip Animations */
.bismillah-flip-x {
animation: bismillahFlipX 1s ease-in-out;
backface-visibility: visible;
}
.bismillah-flip-y {
animation: bismillahFlipY 1s ease-in-out;
backface-visibility: visible;
}
@keyframes bismillahFlipX {
0% {
transform: perspective(400px) rotateX(90deg);
opacity: 0;
}
40% {
transform: perspective(400px) rotateX(-10deg);
}
70% {
transform: perspective(400px) rotateX(10deg);
}
100% {
transform: perspective(400px) rotateX(0deg);
opacity: 1;
}
}
@keyframes bismillahFlipY {
0% {
transform: perspective(400px) rotateY(90deg);
opacity: 0;
}
40% {
transform: perspective(400px) rotateY(-10deg);
}
70% {
transform: perspective(400px) rotateY(10deg);
}
100% {
transform: perspective(400px) rotateY(0deg);
opacity: 1;
}
}
/* Hinge Animation */
.bismillah-hinge {
animation: bismillahHinge 2s ease-in-out;
transform-origin: top left;
}
@keyframes bismillahHinge {
0% {
transform: rotate(0);
}
20%,
60% {
transform: rotate(80deg);
}
40%,
80% {
transform: rotate(60deg);
}
100% {
transform: translateY(700px);
opacity: 0;
}
}
/* Roll In/Out Animations */
.bismillah-roll-in {
animation: bismillahRollIn 1s ease-out forwards;
}
.bismillah-roll-out {
animation: bismillahRollOut 1s ease-in forwards;
}
@keyframes bismillahRollIn {
from {
transform: translateX(-100%) rotate(-120deg);
opacity: 0;
}
to {
transform: translateX(0) rotate(0);
opacity: 1;
}
}
@keyframes bismillahRollOut {
from {
transform: translateX(0) rotate(0);
opacity: 1;
}
to {
transform: translateX(100%) rotate(120deg);
opacity: 0;
}
}
/* Typing Animation */
.bismillah-typing {
overflow: hidden;
white-space: nowrap;
border-right: 2px solid var(--bismillah-primary-color, #4361ee);
animation: bismillahTyping 3.5s steps(40, end) infinite, bismillahBlink 0.75s step-end infinite;
}
@keyframes bismillahTyping {
from {
width: 0;
}
to {
width: 100%;
}
}
@keyframes bismillahBlink {
from,
to {
border-color: transparent;
}
50% {
border-color: var(--bismillah-primary-color, #4361ee);
}
}
/* Focus Attention Animation */
.bismillah-focus-attention {
animation: bismillahFocusAttention 2s ease-in-out;
}
@keyframes bismillahFocusAttention {
0% {
transform: scale(1);
}
50% {
transform: scale(1.05);
box-shadow: 0 0 20px rgba(0, 123, 255, 0.5);
}
100% {
transform: scale(1);
}
}
/* Float Animation */
.bismillah-float {
animation: bismillahFloat 3s ease-in-out infinite;
}
@keyframes bismillahFloat {
0% {
transform: translateY(0);
}
50% {
transform: translateY(-10px);
}
100% {
transform: translateY(0);
}
}
/* Wobble Animation */
.bismillah-wobble {
animation: bismillahWobble 1s ease-in-out;
}
@keyframes bismillahWobble {
0% {
transform: translateX(0%);
}
15% {
transform: translateX(-25%) rotate(-5deg);
}
30% {
transform: translateX(20%) rotate(3deg);
}
45% {
transform: translateX(-15%) rotate(-3deg);
}
60% {
transform: translateX(10%) rotate(2deg);
}
75% {
transform: translateX(-5%) rotate(-1deg);
}
100% {
transform: translateX(0%);
}
}
/* Jello Animation */
.bismillah-jello {
animation: bismillahJello 1s ease;
}
@keyframes bismillahJello {
11.1% {
transform: none;
}
22.2% {
transform: skewX(-12.5deg) skewY(-12.5deg);
}
33.3% {
transform: skewX(6.25deg) skewY(6.25deg);
}
44.4% {
transform: skewX(-3.125deg) skewY(-3.125deg);
}
55.5% {
transform: skewX(1.5625deg) skewY(1.5625deg);
}
66.6% {
transform: skewX(-0.78125deg) skewY(-0.78125deg);
}
77.7% {
transform: skewX(0.390625deg) skewY(0.390625deg);
}
88.8% {
transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
}
100% {
transform: none;
}
}
/* Swing Animation */
.bismillah-swing {
transform-origin: top center;
animation: bismillahSwing 1s ease;
}
@keyframes bismillahSwing {
20% {
transform: rotate(15deg);
}
40% {
transform: rotate(-10deg);
}
60% {
transform: rotate(5deg);
}
80% {
transform: rotate(-5deg);
}
100% {
transform: rotate(0deg);
}
}
/* Tada Animation */
.bismillah-tada {
animation: bismillahTada 1s ease;
}
@keyframes bismillahTada {
0% {
transform: scale(1);
}
10%,
20% {
transform: scale(0.9) rotate(-3deg);
}
30%,
50%,
70%,
90% {
transform: scale(1.1) rotate(3deg);
}
40%,
60%,
80% {
transform: scale(1.1) rotate(-3deg);
}
100% {
transform: scale(1) rotate(0);
}
}
/* Glitch Effect */
.bismillah-glitch {
position: relative;
animation: bismillahGlitch 1s linear infinite;
}
.bismillah-glitch::before,
.bismillah-glitch::after {
content: attr(data-text);
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.bismillah-glitch::before {
left: 2px;
text-shadow: -1px 0 #00fff9;
clip: rect(44px, 450px, 56px, 0);
animation: bismillahGlitchBefore 2s linear alternate-reverse infinite;
}
.bismillah-glitch::after {
left: -2px;
text-shadow: -1px 0 #ff00c1;
clip: rect(44px, 450px, 56px, 0);
animation: bismillahGlitchAfter 3s linear alternate-reverse infinite;
}
@keyframes bismillahGlitch {
2%,
64% {
transform: translate(2px, 0) skew(0deg);
}
4%,
60% {
transform: translate(-2px, 0) skew(0deg);
}
62% {
transform: translate(0, 0) skew(5deg);
}
}
@keyframes bismillahGlitchBefore {
0% {
clip: rect(31px, 9999px, 94px, 0);
}
10% {
clip: rect(112px, 9999px, 76px, 0);
}
20% {
clip: rect(85px, 9999px, 33px, 0);
}
30% {
clip: rect(24px, 9999px, 64px, 0);
}
40% {
clip: rect(59px, 9999px, 26px, 0);
}
50% {
clip: rect(93px, 9999px, 37px, 0);
}
60% {
clip: rect(79px, 9999px, 83px, 0);
}
70% {
clip: rect(129px, 9999px, 39px, 0);
}
80% {
clip: rect(37px, 9999px, 144px, 0);
}
90% {
clip: rect(71px, 9999px, 61px, 0);
}
100% {
clip: rect(10px, 9999px, 145px, 0);
}
}
@keyframes bismillahGlitchAfter {
0% {
top: -10px;
clip: rect(21px, 9999px, 154px, 0);
}
10% {
clip: rect(32px, 9999px, 16px, 0);
}
20% {
clip: rect(95px, 9999px, 83px, 0);
}
30% {
clip: rect(14px, 9999px, 4px, 0);
}
40% {
clip: rect(59px, 9999px, 126px, 0);
}
50% {
clip: rect(93px, 9999px, 37px, 0);
}
60% {
clip: rect(79px, 9999px, 83px, 0);
}
70% {
clip: rect(19px, 9999px, 39px, 0);
}
80% {
clip: rect(37px, 9999px, 14px, 0);
}
90% {
clip: rect(71px, 9999px, 61px, 0);
}
100% {
clip: rect(10px, 9999px, 45px, 0);
}
}
/* Background Animations */
.bismillah-bg-gradient-animate {
background-size: 400% 400%;
animation: bismillahGradientBG 15s ease infinite;
}
@keyframes bismillahGradientBG {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}