<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100%" height="100%">
<defs>
<text id="text" x="50%" y="50%" font-family="Voltaire" font-size="120px" font-weight="800" text-anchor="middle" alignment-baseline="middle">
HIGH VOLTAGE
</text>
</defs>
<filter id="glow">
<feGaussianBlur id="glowBlur" stdDeviation="3.5" result="coloredBlur"/>
<feMerge>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="SourceGraphic"/>
</feMerge>
</filter>
<filter id="shock">
<feTurbulence type="fractalNoise" baseFrequency="0.2" numOctaves="1" seed="2" result="noise" id="noise">
<animate attributeType="XML" attributeName="seed" from="2" to="120" dur="12s" repeatCount="indefinite"/>
</feTurbulence>
<feMorphology id="morph1" in="SourceGraphic" operator="dilate" radius="10" result="morph1" />
<feMorphology id="morph2" in="morph1" operator="dilate" radius="2" result="morph2" />
<feComposite operator="out" in="morph2" in2="morph1" result="strokeText"/>
<feDisplacementMap
xChannelSelector="R"
yChannelSelector="G"
in="strokeText"
in2="noise"
result="displacementMap"
color-interpolation-filters="sRGB"
scale="10" />
<feGaussianBlur stdDeviation="5" result="coloredBlur"/>
<feMerge>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="displacementMap"/>
</feMerge>
</filter>
<filter id="shock2">
<feTurbulence type="fractalNoise" baseFrequency="0.2" numOctaves="1" seed="2" result="noise" id="noise">
<animate attributeType="XML" attributeName="seed" from="2" to="120" dur="10s" repeatCount="indefinite"/>
</feTurbulence>
<feMorphology id="morph3" in="SourceGraphic" operator="dilate" radius="1" result="morph1" />
<feMorphology id="morph4" in="morph1" operator="dilate" radius="1" result="morph2" />
<feComposite operator="out" in="morph2" in2="morph1" result="strokeText"/>
<feDisplacementMap
xChannelSelector="R"
yChannelSelector="G"
in="strokeText"
in2="noise"
result="displacementMap"
color-interpolation-filters="sRGB"
scale="10" />
<feGaussianBlur stdDeviation="5" result="coloredBlur"/>
<feMerge>
<feMergeNode in="coloredBlur"/>
<feMergeNode in="displacementMap"/>
</feMerge>
</filter>
<use xlink:href="#text" id="textShock" x="2" y="2" filter="url(#shock)" stroke="0" stroke-width="1" fill="#ccc"/>
<use xlink:href="#text" id="textShock" x="2" y="2" filter="url(#shock2)" stroke="0" stroke-width="1" fill="#f90"/>
<use xlink:href="#text" id="textFill" x="0" y="0" fill="white" />
<use xlink:href="#text" id="textGlow" x="0" y="0" filter="url(#glow)" stroke="#f90" stroke-width="0.1" fill="transparent"/>
</svg>
@import url("https://fonts.googleapis.com/css?family=Voltaire");
@mixin createAlphaRandom {
@for $i from 0 through 10 {
#{$i * 10%} { opacity: random() * 0.3 + 0.7; }
}
}
html, body {
background: #333;
margin: 0;
height: 100%;
overflow: hidden;
}
#textFill {
animation: alphaRandom 1s linear infinite;
}
#textGlow {
animation: alphaRandom2 1s linear infinite;
}
@keyframes alphaRandom {
@include createAlphaRandom;
}
@keyframes alphaRandom2 {
@include createAlphaRandom;
}
View Compiled
// var morph1 = document.getElementById('morph1');
// var morph2 = document.getElementById('morph2');
// var glowBlur = document.getElementById('glowBlur');
// setInterval(function(){
// glowBlur.setAttribute('stdDeviation', Math.random() * 2 + 2);
// morph2.setAttribute('radius', Math.random() + 4);
// morph1.setAttribute('radius', Math.random() * 1.5 + 9);
// }, 300);
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.