html - How to restrict the css star selector * to a class and all decendants? -
i using following css class selector "fixing" sizing issues:
*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } in above applies entire dom. embeddable web component writing inappropriate can play havoc hosting web app. want restrict these div specific class - lets call class .knuth-style grins - descendent elements. syntax writing this?
update 0
ok, here's thing happy give nit ole check mark here ... solution not work. - actual css class name using:
.grid-container-colorpicker, .grid-container-colorpicker:after, .grid-container-colorpicker:before .grid-container-colorpicker *, .grid-container-colorpicker *:after, .grid-container-colorpicker *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } before:

after:

not pretty sight. discuss?
update 1
not direct jsfiddle - unweildly excise relevant bits - have or better. complete css class assignment dom sub-tree in question.
here before using kleene star (all elements): 
and here nil's suggested solution: 
update 2
ok, after bit of css class renaming, nil's solution correct. 1 caveat: rule of form:
.knuth-style *, .knuth-style *:after, .knuth-style *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } does not appear work. using class attribute approach does:
[class*='knuth-'], [class*='knuth-']:after, [class*='knuth-']:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } i had resort pre-pending identical css class name prefixes decendent classes. no biggy.
simply add necessary selectors?
.knuth-style, .knuth-style:after, .knuth-style:before .knuth-style *, .knuth-style *:after, .knuth-style *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
Comments
Post a Comment