Search code examples
cssfirefoxcss-animationsbox-shadow

Box-Shadow works on Chrome but not on Firefox or IE


@-webkit-keyframes neon {
from {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF1177, 0 0 6px #FF1177, 0 0 9px #FF1177, 0 0 11px #FF1177, 0 0 14px #FF1177;
}
to {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF9900, 0 0 6px #FF9900, 0 0 9px #FF9900, 0 0 11px #FF9900, 0 0 14px #FF9900 inset;
}
}
@-moz-keyframes neon {
from {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF1177, 0 0 6px #FF1177, 0 0 9px #FF1177, 0 0 11px #FF1177, 0 0 14px #FF1177;
}
to {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF9900, 0 0 6px #FF9900, 0 0 9px #FF9900, 0 0 11px #FF9900, 0 0 14px #FF9900 inset;
}
}
@-o-keyframes neon {
from {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF1177, 0 0 6px #FF1177, 0 0 9px #FF1177, 0 0 11px #FF1177, 0 0 14px #FF1177;
}
to {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF9900, 0 0 6px #FF9900, 0 0 9px #FF9900, 0 0 11px #FF9900, 0 0 14px #FF9900 inset;
}
}
@keyframes neon {
from {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF1177, 0 0 6px #FF1177, 0 0 9px #FF1177, 0 0 11px #FF1177, 0 0 14px #FF1177;
}
to {
    -webkit-box-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 5px #FF9900, 0 0 6px #FF9900, 0 0 9px #FF9900, 0 0 11px #FF9900, 0 0 14px #FF9900 inset;
}
}


.deallinkactive {
display: inline;
float: right;
width: 508px;
padding: 5px;
font-size: 14px;
margin: 10px 10px 8px 8px;
border: 1.5px solid rgba(173, 38, 38, 0.541176);
-webkit-border-radius: 3px;
border-radius: 3px;
color: rgba(0, 0, 0, 1);
background: #ecf0f1;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
-ms-transition: all 0.5s ease;
transition: all 0.5s ease;
-webkit-animation: neon2 .2s ease-in-out infinite alternate;
-moz-animation: neon2 .2s ease-in-out infinite alternate;
animation: neon2 .2s ease-in-out infinite alternate;
  }

The Box shadow animation is perfectly working on Chrome and Mobiles but not on IE and Firefox. I have tried -webkit-box-shadow , box-shadow , moz-box-shadow and all the things I found on internet. If I replace text-shadow in box-shadow, text-shadow works. Help!!


Solution

  • First of all, your class .deallinkactive is pointing to a wrong keyframe, it says neon2, change that to neon. then remove -webkit- from all -webkit-box-shadow. Finally, @keyframes not supported in an inline or scoped stylesheet in Firefox bug 830056.

    But you have an alternate:

    @keyframes neon {
        0% {
            -webkit-box-shadow: 0px 0px 12px 0px rgba(255,17,120,1);
            -moz-box-shadow: 0px 0px 12px 0px rgba(255,17,120,1);
            box-shadow: 0px 0px 12px 0px rgba(255,17,120,1);
        }
        100% {
            -webkit-box-shadow: 0px 0px 12px 0px rgba(255,153,0,1);
            -moz-box-shadow: 0px 0px 12px 0px rgba(255,153,0,1);
            box-shadow: 0px 0px 12px 0px rgba(255,153,0,1);
        }
    }
    
    .deallinkactive {
        display: block;
        float: right;
        width: 508px;
        padding: 5px;
        font-size: 14px;
        margin: 10px 10px 8px 8px;
        border: 1.5px solid rgba(173, 38, 38, 0.541176);
        -webkit-border-radius: 3px;
        border-radius: 3px;
        color: rgba(0, 0, 0, 1);
        background: #ecf0f1;
        transition: all 0.5s ease;
        animation: neon .2s ease-in-out infinite alternate;
    }
    

    Fiddle example

    It works on modern browsers (chrome, firefox, safari, IE10+). Hope it helps.

    Tip: try generating box-shadow using cssmatic.com/box-shadow