> Why not make "required" an acceptable attribute for the label element?
The class or title attribute can solve your problem:
<label class="required">
label.required:after {content:"*"}
<label title="required">
label[title~="required"]:after {content:"*"}