Martin, this can be accomplished by accessing the input's JSF component isValid() method, in the label's style attribute. isValid() returns false if validation has run on the component, and the component failed validation For Example:
<xp:label value="Some:" id="label1" style="#{java_script:(!getComponent('inputText1').isValid()) ? 'background-color:#FF0000 !important;color:#FFF;' : '';}"></xp:label>
<xp:inputText id="inputText1" value="#{HelloWorld.someVariable}"
required="true"
disableClientSideValidation="true">
<xp:this.validators>
<xp:validateRequired message="Value Required"></xp:validateRequired>
</xp:this.validators>
</xp:inputText>
<xp:messages id="messages1"></xp:messages>