| <!DOCTYPE html> |
| <html> |
| <body> |
| <script src="../../resources/js-test.js"></script> |
| <div id="target"></div> |
| <script> |
| description("Tests the parsing of the stroke-dashoffset CSS property."); |
| |
| const target = document.getElementById("target"); |
| |
| // Initial value. |
| shouldBeEqualToString("getComputedStyle(target).strokeDashoffset", "0px"); |
| |
| // Valid length. |
| evalAndLog("target.style.strokeDashoffset = '3px';"); |
| shouldBeEqualToString("target.style.strokeDashoffset", "3px"); |
| shouldBeEqualToString("getComputedStyle(target).strokeDashoffset", "3px"); |
| |
| // Valid percentage. |
| evalAndLog("target.style.strokeDashoffset = '10%';"); |
| shouldBeEqualToString("target.style.strokeDashoffset", "10%"); |
| shouldBeEqualToString("getComputedStyle(target).strokeDashoffset", "10%"); |
| |
| // Valid number. |
| evalAndLog("target.style.strokeDashoffset = '20';"); |
| shouldBeEqualToString("target.style.strokeDashoffset", "20"); // Gecko says 20%, Blink says 20. |
| shouldBeEqualToString("getComputedStyle(target).strokeDashoffset", "20px"); |
| |
| // Zero value. |
| evalAndLog("target.style.strokeDashoffset = '0';"); |
| shouldBeEqualToString("target.style.strokeDashoffset", "0"); // Gecko says 0px, specification and Blink say 0. |
| shouldBeEqualToString("getComputedStyle(target).strokeDashoffset", "0px"); |
| |
| // Negative value. |
| target.style.strokeDashoffset = ""; |
| evalAndLog("target.style.strokeDashoffset = '-30px';"); |
| shouldBeEqualToString("target.style.strokeDashoffset", "-30px"); |
| shouldBeEqualToString("getComputedStyle(target).strokeDashoffset", "-30px"); |
| </script> |
| </body> |
| </html> |