Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

SVG Preview (Scaled)

Preview of https://hg.mozilla.org/mozilla-central/raw-file/tip/testing/web-platform/tests/svg/painting/parsing/stroke-width-computed.svg
<?xml version="1.0" encoding="UTF-8"?>
width="800px" height="800px">
<title>SVG Painting: getComputedStyle().strokeWidth</title>
<metadata>
<h:meta name="assert" content="stroke-width computed value is absolute length."/>
</metadata>
<g id="target"></g>
<g id="ref"></g>
<style>
#target, #ref {
font-size: 40px;
}
</style>
<h:script src="/resources/testharness.js"/>
<h:script src="/resources/testharnessreport.js"/>
<h:script src="/css/support/computed-testcommon.js"/>
<script><![CDATA[
test_computed_value("stroke-width", "10", "10px");
test_computed_value("stroke-width", "calc(10px + 0.5em)", "30px");
test_computed_value("stroke-width", "calc(10px - 0.5em)", "0px");
test_computed_value("stroke-width", "40%");
test_computed_value("stroke-width", "calc(50% + 60px)");
const lengthUnits = [
'em',
'ex',
'ch',
'rem',
'vw',
'vh',
'vmin',
'vmax',
'cm',
'mm',
'Q',
'in',
'pt',
'pc',
'px'
];
for (let lengthUnit of lengthUnits) {
const length = '987' + lengthUnit;
test(() => {
const target = document.getElementById('target');
target.style.strokeWidth = length;
const ref = document.getElementById('ref');
ref.style.textIndent = length;
assert_equals(getComputedStyle(target).strokeWidth, getComputedStyle(ref).textIndent);
}, 'stroke-width computes ' + lengthUnit + ' lengths');
}
]]></script>
</svg>