<!DOCTYPE html> <html> <head> <title> Test inheritance through various anonymous boxes: {ib} situations, buttons, overflow, columns, listboxes, first-line </title> <style> /** * The idea is that "color" inherits by default while "border-color" does * not. So if the former is red and the latter is green on a parent, and * the child's border-color is set to "inherit", it'll be green only if * the child is inheriting from the parent. If not, it'll either be * whatever the border-color is on what it's inheriting from, which will * be red if what it's inheriting from has the default (currentColor) * border-color). */ /* 't' for "test" */ * { color: green; border: 0px hidden green; background: transparent } .t { border-color: green } .t:not(.d2) > :first-child, .d2 > span { border-color: green; border-style: solid; border-width: 10px } .f::first-line { border-color: green } </style> </head> <body> <div class="t"><div></div></div> <span class="t"><div></div></span> <span style="position: relative" class="t"><div></div></span> <div class="f"><span></span><br><span></span></div> <button class="t"><div></div></button> <div style="overflow: auto" class="t"><div></div></div> <div style="-moz-column-count: 2" class="t"><div></div></div> <select size="2" class="t"> <option></option> </select> <div class="t"><div></div></div> <span class="t"><div></div></span> <span style="position: relative" class="t"><div></div></span> <div class="f"><span></span><br><span></span></div> <button class="t"><div></div></button> <div style="overflow: auto" class="t"><div></div></div> <div style="-moz-column-count: 2" class="t"><div></div></div> <select size="2" class="t"> <option></option> </select> <span class="t d2"><div></div><span></span></span> <span style="position: relative" class="t d2"><div></div><span></span></span> </body> </html>