| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <meta charset="utf-8"> | |
| <title>CSS Cascade: inline style loses to !important</title> | |
| <link rel="help" href="https://www.w3.org/TR/css-cascade-4/#cascade-sort"> | |
| <link rel="author" href="mailto:sesse@chromium.org"> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <style> | |
| .outer { | |
| opacity: 0.5 !important; | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <p class="outer" id="el">Test passes if this text is semi-transparent.</p> | |
| </body> | |
| <script> | |
| test(() => { | |
| el.offsetTop; | |
| assert_equals(getComputedStyle(el).opacity, "0.5", "style is set correctly"); | |
| }); | |
| test(() => { | |
| el.offsetTop; | |
| el.style.opacity = 0.75; | |
| assert_equals(getComputedStyle(el).opacity, "0.5", "!important has higher priority than adding inline style"); | |
| }); | |
| test(() => { | |
| el.offsetTop; | |
| el.style.opacity = 1.0; | |
| assert_equals(getComputedStyle(el).opacity, "0.5", "!important has higher priority than modifying inline style"); | |
| }); | |
| test(() => { | |
| el.offsetTop; | |
| el.style.opacity = null; | |
| assert_equals(getComputedStyle(el).opacity, "0.5", "!important has higher priority than removing inline style"); | |
| }); | |
| </script> | |
| </html> |