Jump to content

Template:TextAnimations/styles.css: Difference between revisions

From FC1
No edit summary
No edit summary
Line 1: Line 1:
/* 1. Base Keyframes */
/* 1. Base Keyframes */
@keyframes wave {
@keyframes wave {
   0%, 100% { transform: translateY(0) !important; }
   0%, 100% { margin-top: 0; }
   50%      { transform: translateY(-6px) !important; }
   50%      { margin-top: -6px; }
}
}


Line 11: Line 11:


/* 2. Standard Styles */
/* 2. Standard Styles */
/* Note: We removed 'animation-delay: inherit' so the inline JS style wins */
.wavy span {  
.wavy span {  
   display: inline-block !important;
   display: inline-block !important;
  vertical-align: middle;
   animation: wave 1s ease-in-out infinite;  
   animation: wave 1s ease-in-out infinite;  
}
}
Line 22: Line 22:
.wavy.rainbow span {
.wavy.rainbow span {
   display: inline-block !important;
   display: inline-block !important;
  vertical-align: middle;
   animation: wave 1s ease-in-out infinite, hue-cycle 3s linear infinite;
   animation: wave 1s ease-in-out infinite, hue-cycle 3s linear infinite;
}
}
Line 35: Line 36:
   }
   }
    
    
   html body .wavy span { animation-name: wave !important; animation-duration: 1s !important; }
   html body .wavy span {  
   html body .rainbow span { animation-name: hue-cycle !important; animation-duration: 3s !important; }
    animation-name: wave !important;  
    animation-duration: 1s !important;  
  }
   html body .rainbow span {  
    animation-name: hue-cycle !important;  
    animation-duration: 3s !important;  
  }
   html body .wavy.rainbow span {  
   html body .wavy.rainbow span {  
     animation-name: wave, hue-cycle !important;  
     animation-name: wave, hue-cycle !important;  

Revision as of 07:19, 14 March 2026

/* 1. Base Keyframes */
@keyframes wave {
  0%, 100% { margin-top: 0; }
  50%      { margin-top: -6px; }
}

@keyframes hue-cycle {
  from { filter: hue-rotate(0deg); }
  to   { filter: hue-rotate(360deg); }
}

/* 2. Standard Styles */
.wavy span { 
  display: inline-block !important;
  vertical-align: middle;
  animation: wave 1s ease-in-out infinite; 
}
.rainbow span { 
  display: inline-block !important;
  animation: hue-cycle 3s linear infinite; 
}
.wavy.rainbow span {
  display: inline-block !important;
  vertical-align: middle;
  animation: wave 1s ease-in-out infinite, hue-cycle 3s linear infinite;
}

/* 3. Override Styles (Reduced Motion) */
@media (prefers-reduced-motion: reduce) {
  html body .wavy span,
  html body .rainbow span,
  html body .wavy.rainbow span { 
    animation-iteration-count: infinite !important;
    animation-play-state: running !important;
    display: inline-block !important;
  }
  
  html body .wavy span { 
    animation-name: wave !important; 
    animation-duration: 1s !important; 
  }
  html body .rainbow span { 
    animation-name: hue-cycle !important; 
    animation-duration: 3s !important; 
  }
  html body .wavy.rainbow span { 
    animation-name: wave, hue-cycle !important; 
    animation-duration: 1s, 3s !important;
  }
}