<!DOCTYPE html>

<html>
<head>
  <style type="text/css" media="screen">
    .box {
      display: inline-block;
      height: 120px;
      width: 200px;
      margin: 10px;
      border: 1px solid black;
      background-repeat: no-repeat;
    }

    .radial1 {
      background-image: repeating-radial-gradient(white, black 20%);
    }
    
    .radial2 {
      background-image: repeating-radial-gradient(white 80%, black);
    }

    .radial3 {
      background-image: repeating-radial-gradient(at top left, red, blue 20px, red 40px);
    }

    .radial4 {
      background-image: repeating-radial-gradient(at bottom left, red 10%, blue 30%);
    }

    .radial5 {
      background-image: repeating-radial-gradient(at left, red -10%, blue -5%);
    }

    .radial6 {
      background-image: repeating-radial-gradient(at left, red -10%, blue 105%);
    }

    .radial7 {
      background-image: repeating-radial-gradient(at left, red 90%, blue 105%);
    }

    .radial8 {
      background-image: repeating-radial-gradient(at top, red 2em, blue 3em);
    }

    .radial9 {
      background-image: repeating-radial-gradient(circle at left, red, orange, yellow, green, blue, red 60px);
    }

    .radial10 {
      background-image: repeating-radial-gradient(at left, red 10%, 25%, blue 50%);
    }

    .radial11 {
      background-image: repeating-radial-gradient(at top, red 2em, 2.4em, blue 6em);
    }

    .radial12 {
      background-image: repeating-radial-gradient(circle at left, red, 10px, blue 60px);
    }

  </style>
  <script>
    if (window.testRunner) {
      var dumpPixels = true;
      testRunner.dumpAsText(dumpPixels);
    }
  </script>
</head>
<body>

  <div class="radial1 box"></div>
  <div class="radial2 box"></div>
  <div class="radial3 box"></div>
  <br>
  <div class="radial4 box"></div>
  <div class="radial5 box"></div>
  <div class="radial6 box"></div>
  <br>
  <div class="radial7 box"></div>
  <div class="radial8 box"></div>
  <div class="radial9 box"></div>
  <br>
  <div class="radial10 box"></div>
  <div class="radial11 box"></div>
  <div class="radial12 box"></div>
</body>
</html>
