| <!doctype html> |
| <html> |
| <head> |
| <style> |
| /* Specificity: (1, 1, 1). */ |
| testcase.case#case1, testcase.case#case2 { |
| background-color: red; |
| color: white; |
| border: 10px solid black; |
| } |
| |
| /* The maximum here is (1, 0, 1), the total is (1, 0, 2) which does not override the baseline. */ |
| testcase:not(testcase1, testcase2, testcase1.foo, testcase1.foo.bar, testcase1.foo.bar.baz, #case2, testcase#case2, testcase1#case2) { |
| background-color: blue; |
| } |
| |
| /* Adding testcase#case2.case to push to (1, 1, 2). */ |
| testcase:not(testcase1, testcase2, testcase1.foo, testcase1.foo.bar, testcase1.foo.bar.baz, #case2, testcase#case2, testcase1#case2, testcase#case2.case) { |
| background-color: pink; |
| } |
| |
| /* #case2.case.case2 to push to (1, 2, 1). */ |
| testcase:not(testcase1, testcase2, testcase1.foo, testcase1.foo.bar, testcase1.foo.bar.baz, #case2, testcase#case2, testcase1#case2, #case2.case.case2) { |
| color: green; |
| } |
| |
| /* #case2.case#case1 to push to (2, 0, 1). */ |
| testcase:not(testcase1, testcase2, testcase1.foo, testcase1.foo.bar, testcase1.foo.bar.baz, #case2, testcase#case2, testcase1#case2, #case2#case1) { |
| border: none; |
| } |
| |
| /* The maximum here is (1, 0, 1), the total is (1, 0, 2) which does not override the baseline. */ |
| testcase:not(testcase1#case2) { |
| background-color: blue; |
| } |
| |
| /* Adding testcase#case2.case to push to (1, 1, 2). */ |
| testcase:not(testcase#case1.case) { |
| background-color: green; |
| } |
| |
| /* #case2.case.case2 to push to (1, 2, 1). */ |
| testcase:not(#case1.case.case) { |
| color: pink; |
| } |
| |
| /* #case3#case1 to push to (2, 0, 1). */ |
| testcase:not(#case3#case1) { |
| border: none; |
| } |
| </style> |
| </head> |
| <body> |
| <p>Test the specificity of :not() with compound selectors.</p> |
| <testcase class="case" id="case1">This sentence should be green on a pink background, without border.</testcase> |
| <testcase class="case" id="case2">This sentence should be pink on a green background, without border.</testcase> |
| </body> |
| </html> |