<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>WICD Core 1.0 #12 - scalable fullscreen background</title>
  <link rel="stylesheet" type="text/css" href="resources/main.css"/>
  <link rel="stylesheet" type="text/css" href="resources/test-scalable-background-image2.css"/>
</head>
<body>
  <script src="../../resources/run-after-layout-and-paint.js"></script>
  <script>
  if (window.testRunner)
      testRunner.waitUntilDone();

  runAfterLayoutAndPaint(function() {
      if (window.testRunner)
          testRunner.notifyDone();
  });
  </script>
  <h1>scalable fullscreen background</h1>
  <h4>WICD Core 1.0 #12</h4>
  <p>
    This text is XHTML main layer content, which must overlay a lightblue SVG-background image with
      text ('SVG background image'). The SVG background image must cover the complete XHTML-background area.
  </p>
  <p>
    This test has failed, if you don't see any graphics on the background. (your user agent does not support SVG as background image).
  </p>
  <p><a href="javascript:history.back()">Back</a></p>
</body>
</html>
