Unfortunately, what you want cannot be done using existing CSS3 selectors.
It is planned that this function will be included in the CSS 4 level selector, but the specification for this is not yet complete and, of course, has not been implemented in any current browsers.
The idea is a selector that will look something like this:
label /for/ [type="radio"] { /* styles */ }
But this is for the future, not now. Unfortunately.
You can read about it here: http://css4-selectors.com/selector/css4/reference-combination/
At the same time, if you need this, you will need to make sure that you are structuring your HTML so that elements can reference each other using existing CSS selectors.
For example, if they are next to each other, you can use this:
label + input[type="radio"] { .... }
It is as close to you as possible.
source share