90 lines
3.5 KiB
HTML
90 lines
3.5 KiB
HTML
<html>
|
|
<head>
|
|
<title></title>
|
|
<script type="text/javascript">
|
|
function log(message)
|
|
{
|
|
var console = document.getElementById("console");
|
|
console.appendChild(document.createElement("li")).innerHTML = message;
|
|
}
|
|
|
|
function testShorthand(shorthand)
|
|
{
|
|
var element = document.createElement("div");
|
|
element.setAttribute("style",
|
|
"border: thin dotted purple; \
|
|
background: red url(/background.png) repeat-y scroll right bottom; \
|
|
list-style: square outside url(/marker.png); \
|
|
margin: 5%; \
|
|
-webkit-margin-collapse: collapse; \
|
|
padding: 2em; \
|
|
-webkit-text-stroke: orange 1pt; \
|
|
-webkit-columns: 100px 3; \
|
|
-webkit-column-rule: thick dashed silver; \
|
|
border-spacing: 10px 20px; \
|
|
-webkit-border-radius: 6px 8px; \
|
|
overflow: scroll; \
|
|
-webkit-mask: url(/mask.png) repeat-x center top;");
|
|
var allProperties = element.style.cssText.concat(" ").split("; ");
|
|
element.style.removeProperty(shorthand);
|
|
var remainingProperties = element.style.cssText.concat(" ").split("; ");
|
|
var removedProperties = [];
|
|
var addedProperties = [];
|
|
|
|
for (var i = 0; i < allProperties.length; i++) {
|
|
if (remainingProperties.indexOf(allProperties[i]) < 0)
|
|
removedProperties.push("<tt>" + allProperties[i].replace(/\:.*/,"") + "</tt>");
|
|
}
|
|
for (var i = 0; i < remainingProperties.length; i++) {
|
|
if (allProperties.indexOf(remainingProperties[i]) < 0)
|
|
addedProperties.push("<tt>" + remainingProperties[i].replace(/\:.*/,"") + "</tt>");
|
|
}
|
|
|
|
log("Removing <tt>" + shorthand + '</tt><br>removes "' + removedProperties.join(", ")
|
|
+ '"<br>and adds "' + addedProperties.join(", ") + '".');
|
|
}
|
|
|
|
function test()
|
|
{
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
var shorthands = [
|
|
"background",
|
|
"background-position",
|
|
"border",
|
|
"border-top", "border-right", "border-bottom", "border-left",
|
|
"border-color", "border-style", "border-width",
|
|
"border-radius",
|
|
"-webkit-border-radius",
|
|
"border-spacing",
|
|
"-webkit-columns",
|
|
"-webkit-column-rule",
|
|
"list-style",
|
|
"margin",
|
|
"-webkit-margin-collapse",
|
|
"-webkit-mask",
|
|
"-webkit-mask-position",
|
|
"overflow",
|
|
"padding",
|
|
"-webkit-text-stroke"
|
|
];
|
|
|
|
for (i in shorthands)
|
|
testShorthand(shorthands[i]);
|
|
}
|
|
</script>
|
|
</head>
|
|
<body onload="test()">
|
|
<p>
|
|
Test for <i><a href="http://bugs.webkit.org/show_bug.cgi?id=9284">http://bugs.webkit.org/show_bug.cgi?id=9284</a>
|
|
Quirksmode (CSS1): Removing inline border styles is impossible</i>.
|
|
</p>
|
|
<p>
|
|
Starting with a declaration containing all properties that are constituents of shortcuts, see what is removed
|
|
when a shortcut property is removed. The shortcut’s constituents and only them should be removed.
|
|
</p>
|
|
<ul id="console"></ul>
|
|
</body>
|
|
</html>
|