blob: 41fc6bbe8b460bbc920adb6df89071fb1d12fdb8 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
(async function() {
TestRunner.addResult(`Highlight CSS shapes.\n`);
await TestRunner.loadModule('elements_test_runner');
await TestRunner.showPanel('elements');
await TestRunner.loadHTML(`
<!DOCTYPE html>
<style>
.float {
width: 8em;
height: 8em;
float: left;
shape-margin: 2em;
margin: 1em;
}
.circle {
background-color:blue;
shape-outside: circle(closest-side at center);
-webkit-clip-path: circle(closest-side at center);
}
.contentBox {
background-color:blue;
border-radius: 2em 4em 2em 2em;
border-width: 3em 1em 2em 1em;
padding: 1em 1em 1em 2em;
margin: 2em 1em 1em 1em;
shape-outside: content-box;
-webkit-clip-path: content-box;
}
.insetSimpleRound {
background-color:green;
shape-outside: inset(30% round 20%);
-webkit-clip-path: inset(30% round 20%);
}
.insetComplexRound {
background-color:blue;
shape-outside: inset(10% round 10% 40% 10% 40%);
-webkit-clip-path: inset(10% round 10% 40% 10% 40%);
}
.ellipse {
background-color:green;
height: 5em;
shape-outside: ellipse(closest-side closest-side);
-webkit-clip-path: ellipse(closest-side closest-side);
}
.raster {
background-color: blue;
shape-outside: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100px' height='100px'><rect width='100' height='100' fill='green'/></svg>");
}
.polygon {
background-color: green;
shape-outside: polygon(0px 0px, 0px 200px, 200px 0px);
}
</style>
<div class="float circle" id="circle"> </div>
<div class="float insetSimpleRound" id="insetSimpleRound"> </div>
<div class="float insetComplexRound" id="insetComplexRound"> </div>
<div class="float ellipse" id="ellipse"> </div>
<div class="float contentBox" id="contentBox"> </div>
<div class="float polygon" id="polygon"> </div>
<div class="float raster" id="raster"> </div>
`);
var list = ['circle', 'insetSimpleRound', 'insetComplexRound', 'ellipse', 'contentBox', 'polygon', 'raster'];
var index = 0;
function nextNode() {
var nodeId = String(list[index++]);
ElementsTestRunner.dumpInspectorHighlightJSON(
nodeId, (index == list.length) ? TestRunner.completeTest.bind(TestRunner) : nextNode);
}
nextNode();
})();