You need to use a single combined selector instead of two selectors:
input:not([type=checkbox]):not([type=radio]) { ... }
This selects any input
element that does not have the attribute type=checkbox
and that does not have the attribute type=radio
. The code in the question, with two selectors, selects all input
elements that do not have the attribute type=checkbox
and additionally all input
elements that do not have the attribute type=radio
, so it ends up with selecting all input
elements.
Usual CSS Caveats apply. You may wish to use polyfill like Selectivzr to cover old versions of IE.