| <!doctype html> |
| <title>CSS Test: @keyframes applies to :host::before/::after.</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <link rel="help" href="https://drafts.csswg.org/css-scoping/#shadow-names"> |
| <div id="host"></div> |
| <script> |
| test(function() { |
| host.attachShadow({ mode: "open" }).innerHTML = ` |
| <style> |
| @keyframes myanim { |
| from { background: red; } |
| to { background: green; } |
| } |
| :host::before, :host::after { |
| content: ""; |
| display: block; |
| width: 100px; |
| height: 100px; |
| background: blue; |
| animation: myanim 10s infinite step-end; |
| } |
| </style> |
| `; |
| |
| assert_equals(getComputedStyle(document.getElementById('host'), "::before").backgroundColor, "rgb(255, 0, 0)"); |
| assert_equals(getComputedStyle(document.getElementById('host'), "::after").backgroundColor, "rgb(255, 0, 0)"); |
| }, "@keyframes applies to the shadow host"); |
| </script> |