Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URLs added here will be added as <link>s in order, and before the CSS in the editor. You can use the CSS from another Pen by using its URL and the proper URL extension.

+ add another resource

JavaScript

Babel includes JSX processing.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Packages

Add Packages

Search for and use JavaScript packages from npm here. By selecting a package, an import statement will be added to the top of the JavaScript editor for this package.

Behavior

Auto Save

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

Format on Save

If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.

Editor Settings

Code Indentation

Want to change your Syntax Highlighting theme, Fonts and more?

Visit your global Editor Settings.

HTML

              
                <div class="mistletoe">
  <svg width="452px" height="631px" viewBox="0 0 452 631">
    <defs>
      <filter x="-50%" y="-50%" width="200%" height="200%" filterUnits="objectBoundingBox" id="filter-1">
          <feOffset dx="0" dy="10" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
          <feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
          <feColorMatrix values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.35 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
          <feMerge>
              <feMergeNode in="shadowMatrixOuter1"></feMergeNode>
              <feMergeNode in="SourceGraphic"></feMergeNode>
          </feMerge>
      </filter>
      <filter x="-50%" y="-50%" width="200%" height="200%" filterUnits="objectBoundingBox" id="filter-2">
          <feOffset dx="0" dy="10" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
          <feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
          <feColorMatrix values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.35 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
          <feMerge>
              <feMergeNode in="shadowMatrixOuter1"></feMergeNode>
              <feMergeNode in="SourceGraphic"></feMergeNode>
          </feMerge>
      </filter>
      <linearGradient x1="46.5836831%" y1="115.041419%" x2="50%" y2="0%" id="linearGradient-3">
          <stop stop-color="#C50808" offset="0%"></stop>
          <stop stop-color="#FF2323" offset="100%"></stop>
          <stop stop-color="#DA3A3A" offset="100%"></stop>
      </linearGradient>
      <linearGradient x1="53.6571606%" y1="100%" x2="50%" y2="0%" id="linearGradient-4">
          <stop stop-color="#C40808" offset="0%"></stop>
          <stop stop-color="#FF2323" offset="100%"></stop>
          <stop stop-color="#DA3A3A" offset="100%"></stop>
      </linearGradient>
      <filter x="-50%" y="-50%" width="200%" height="200%" filterUnits="objectBoundingBox" id="filter-5">
          <feOffset dx="-1" dy="3" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
          <feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
          <feColorMatrix values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.35 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
          <feMerge>
              <feMergeNode in="shadowMatrixOuter1"></feMergeNode>
              <feMergeNode in="SourceGraphic"></feMergeNode>
          </feMerge>
      </filter>
      <filter x="-50%" y="-50%" width="200%" height="200%" filterUnits="objectBoundingBox" id="filter-6">
          <feOffset dx="-1" dy="3" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
          <feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
          <feColorMatrix values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.35 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
          <feMerge>
              <feMergeNode in="shadowMatrixOuter1"></feMergeNode>
              <feMergeNode in="SourceGraphic"></feMergeNode>
          </feMerge>
      </filter>
      <filter x="-50%" y="-50%" width="200%" height="200%" filterUnits="objectBoundingBox" id="filter-7">
          <feOffset dx="0" dy="5" in="SourceAlpha" result="shadowOffsetOuter1"></feOffset>
          <feGaussianBlur stdDeviation="2" in="shadowOffsetOuter1" result="shadowBlurOuter1"></feGaussianBlur>
          <feColorMatrix values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.35 0" in="shadowBlurOuter1" type="matrix" result="shadowMatrixOuter1"></feColorMatrix>
          <feMerge>
              <feMergeNode in="shadowMatrixOuter1"></feMergeNode>
              <feMergeNode in="SourceGraphic"></feMergeNode>
          </feMerge>
      </filter>
    </defs>
    <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
      <g id="hanger" sketch:type="MSLayerGroup" transform="translate(187.000000, 0.000000)">
          <rect id="Rectangle-5" fill="#E70202" filter="url(#filter-1)" sketch:type="MSShapeGroup" x="0" y="0" width="17" height="153"></rect>
          <rect id="Rectangle-5" fill="#FF0101" filter="url(#filter-2)" sketch:type="MSShapeGroup" x="7" y="0" width="17" height="136"></rect>
      </g>
      <path d="M307.665756,301.642857 L308.944884,301.642857 C308.930934,301.239338 308.923913,300.834441 308.923913,300.428238 C308.923913,276.502473 333.280596,257.106809 363.326087,257.106809 C363.886074,257.106809 364.444086,257.113547 365,257.126926 L365,255.949775 C350.82158,249.122179 341.081003,237.117564 339.992906,223.263266 C336.836697,225.718638 333.063971,227.146195 329.01087,227.146195 C322.124535,227.146195 316.04756,223.02527 312.428581,216.74399 C306.252723,223.93629 294.813599,228.765688 281.722826,228.765688 C267.59997,228.765688 255.399462,223.144767 249.656263,215.000002 L211,215 L211,261.634832 C215.825237,259.753572 221.041067,258.726302 226.483696,258.726302 C244.673396,258.726302 260.329873,270.200394 267.338744,286.680119 C271.554512,283.81648 276.294137,282.208945 281.304348,282.208945 C292.275304,282.208945 301.948838,289.916867 307.665756,301.642857 Z" id="leaf4" fill="#26780B" sketch:type="MSShapeGroup"></path>
      <g id="leaf3" sketch:type="MSLayerGroup" transform="translate(169.000000, 158.000000)">
          <path d="M80.1749109,147.311079 L81.7032187,147.311079 C81.6865514,146.812755 81.6781631,146.312724 81.6781631,145.811079 C81.6781631,116.263845 110.779654,92.3110793 146.678163,92.3110793 C147.347239,92.3110793 148.013954,92.3193999 148.678163,92.3359222 L148.678163,90.8821952 C131.737714,82.450423 120.099621,67.6252681 118.799557,50.5158386 C115.028503,53.5481111 110.52083,55.3110793 105.678163,55.3110793 C97.4503352,55.3110793 90.1895331,50.2219238 85.8655589,42.4648279 C78.4866109,51.3469928 64.8190862,57.3110793 49.1781631,57.3110793 C32.304101,57.3110793 17.7268711,50.3694972 10.8648671,40.3110812 L-35.3218369,40.3110793 L-35.3218369,97.9029786 C-29.5566194,95.5797115 -23.324718,94.3110793 -16.8218369,94.3110793 C4.91131092,94.3110793 23.6177515,108.481063 31.9919872,128.832776 C37.0290083,125.296311 42.6919373,123.311079 48.6781631,123.311079 C61.786319,123.311079 73.3443077,132.830013 80.1749109,147.311079 Z" id="Rectangle-1" fill="#0A8700" sketch:type="MSShapeGroup" transform="translate(56.678163, 93.811079) scale(-1, 1) rotate(92.000000) translate(-56.678163, -93.811079) "></path>
          <path d="M6.82374858,96.2233704 C6.82374858,90.3955873 47.1492761,96.22337 47.1492761,96.22337 L88.2449713,93.0511529" id="Line" stroke="#386900" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" sketch:type="MSShapeGroup" transform="translate(47.534360, 94.637262) scale(-1, 1) rotate(87.000000) translate(-47.534360, -94.637262) "></path>
      </g>
      <g id="leaf2" sketch:type="MSLayerGroup" transform="translate(65.000000, 118.000000)">
          <path d="M110.990977,151.330487 L112.419787,151.330487 C112.404205,150.853463 112.396363,150.374804 112.396363,149.894601 C112.396363,121.610297 139.603251,98.6813376 173.164648,98.6813376 C173.790165,98.6813376 174.413475,98.6893025 175.034442,98.7051186 L175.034442,97.3135279 C159.196871,89.2421527 148.316457,75.0506656 147.101031,58.67254 C143.575485,61.5752049 139.361277,63.262819 134.833884,63.262819 C127.141714,63.262819 120.353614,58.391188 116.311145,50.9656516 C109.412591,59.4681684 96.6348673,65.1773335 82.0122199,65.1773335 C66.2367149,65.1773335 52.6085108,58.5324536 46.1932459,48.903962 L3.01344874,48.9039602 L3.01344874,104.034227 C8.40333179,101.810259 14.2295157,100.595852 20.3090377,100.595852 C40.6272859,100.595852 58.1158754,114.160172 65.9449207,133.641997 C70.6540151,130.25669 75.9482688,128.356313 81.5447716,128.356313 C93.7995432,128.356313 104.605069,137.468381 110.990977,151.330487 Z" id="Rectangle-1" fill="#2A9600" sketch:type="MSShapeGroup" transform="translate(89.023945, 100.117223) rotate(121.000000) translate(-89.023945, -100.117223) "></path>
          <path d="M60.3024207,101.032683 L94.0379742,110.032683 L130.302421,106.860466" id="Line" stroke="#386900" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" sketch:type="MSShapeGroup" transform="translate(95.302421, 105.532683) rotate(113.000000) translate(-95.302421, -105.532683) "></path>
      </g>
      <g id="leaf1" sketch:type="MSLayerGroup" transform="translate(199.000000, 147.000000)">
          <path d="M121.773745,124 L123.385113,124 C123.36754,123.422503 123.358696,122.843027 123.358696,122.261682 C123.358696,88.0200278 154.04179,60.2616822 191.891305,60.2616822 C192.596743,60.2616822 193.299693,60.2713248 194,60.2904721 L194,58.6057792 C176.138874,48.8343795 163.868277,31.6538262 162.497557,11.8260762 C158.521554,15.3401115 153.768899,17.3831776 148.663044,17.3831776 C139.988051,17.3831776 132.33264,11.4854646 127.773668,2.49593289 C119.99369,12.7892829 105.583365,19.7009346 89.0923917,19.7009346 C71.3012609,19.7009346 55.9317903,11.6564842 48.6968513,2.1876676e-06 L3.86548777e-07,8.52651283e-14 L3.86548777e-07,66.7420141 C6.07854491,64.0496298 12.6491366,62.5794393 19.5054352,62.5794393 C42.4197323,62.5794393 62.1428272,79.0007289 70.9721844,102.585892 C76.2829567,98.4875587 82.2536535,96.1869159 88.5652178,96.1869159 C102.385773,96.1869159 114.571914,107.218203 121.773745,124 Z" id="Rectangle-1" fill="#2A9600" sketch:type="MSShapeGroup"></path>
          <path d="M64.5,40.5 L98.2355535,49.5 L134.5,46.3277829" id="Line" stroke="#386900" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" sketch:type="MSShapeGroup"></path>
      </g>
      <g id="ribbon" sketch:type="MSLayerGroup" transform="translate(92.000000, 84.000000)" stroke-width="19">
          <path d="M1.50097002,39.1510618 C1.50097002,31.9713601 26.1253088,26.1510618 56.50097,26.1510618 C58.5804587,26.1510618 60.632993,26.1783395 62.6525177,26.2314635 C90.1327432,26.9543369 111.50097,32.4628756 111.50097,39.1510618 C111.50097,46.3307636 86.8766313,52.1510618 56.50097,52.1510618 C26.1253088,52.1510618 1.50097002,46.3307636 1.50097002,39.1510618 Z" id="Oval-35" stroke="url(#linearGradient-4)" sketch:type="MSShapeGroup" transform="translate(56.500970, 39.151062) rotate(-160) translate(-56.500970, -39.151062) "></path>

          <path d="M105.235908,30.80201 C105.235908,23.6223083 129.860246,17.80201 160.235908,17.80201 C190.611569,17.80201 215.235908,23.6223083 215.235908,30.80201 C215.235908,37.9817118 190.611569,43.80201 160.235908,43.80201 C129.860246,43.80201 105.235908,37.9817118 105.235908,30.80201 Z" id="Oval-34" stroke="url(#linearGradient-3)" sketch:type="MSShapeGroup" transform="translate(160.235908, 30.802010) rotate(-19.000000) translate(-160.235908, -30.802010) "></path>

      </g>
      <g id="fruit" sketch:type="MSLayerGroup" transform="translate(169.000000, 128.000000)">
          <circle id="Oval-3" fill="#ED1B24" filter="url(#filter-5)" sketch:type="MSShapeGroup" cx="30" cy="70" r="30"></circle>
          <circle id="Oval-2" fill="#ED1B24" filter="url(#filter-6)" sketch:type="MSShapeGroup" cx="70.5" cy="63.5" r="28.5"></circle>
          <circle id="Oval-1" fill="#ED1B24" filter="url(#filter-7)" sketch:type="MSShapeGroup" cx="35" cy="35" r="35"></circle>
          <path d="M36,25 C39.3137085,25 42,22.3137085 42,19 C42,15.6862915 39.3137085,13 36,13 C32.6862915,13 30,15.6862915 30,19 C30,22.3137085 32.6862915,25 36,25 Z" id="Oval-4" fill="#EBEBEB" sketch:type="MSShapeGroup"></path>
          <circle id="Oval-5" fill="#EFEFEF" sketch:type="MSShapeGroup" cx="46.5" cy="29.5" r="4.5"></circle>
          <circle id="Oval-6" fill="#FFFFFF" sketch:type="MSShapeGroup" cx="49.5" cy="19.5" r="2.5"></circle>
          <path d="M81.2727273,57.8571429 C83.0802046,57.8571429 84.5454545,56.3221191 84.5454545,54.4285714 C84.5454545,52.5350237 83.0802046,51 81.2727273,51 C79.4652499,51 78,52.5350237 78,54.4285714 C78,56.3221191 79.4652499,57.8571429 81.2727273,57.8571429 Z" id="Oval-4" fill="#EBEBEB" sketch:type="MSShapeGroup"></path>
          <ellipse id="Oval-5" fill="#EFEFEF" sketch:type="MSShapeGroup" cx="86.4545455" cy="60.5714286" rx="2.45454545" ry="2.57142857"></ellipse>
          <ellipse id="Oval-6" fill="#FFFFFF" sketch:type="MSShapeGroup" cx="88.3636364" cy="55.4285714" rx="1.36363636" ry="1.42857143"></ellipse>
      </g>
    </g>
  </svg>
</div>
              
            
!

CSS

              
                .mistletoe{
  width: 500px;
  margin: auto;
}
#ribbon{
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  animation: dash 5s linear forwards;
}

@keyframes dash {
  to {
    stroke-dashoffset: 0;
  }
}

              
            
!

JS

              
                
              
            
!
999px

Console