In a web form in which you signal required fields with a red asterisk, is it good UX to change the asterisk's color or even remove it after the user fills in the corresponding required field?
Your instinct to give the user feedback to tell them that they have met the required field's standard is a good one.
Having an asterisk indicates that the field is required, and depending on the field, it may have additional validation requirements (ex: telephone number, email address, SSN, etc.)
For these fields it is helpful to tell a user when they have entered information that is sufficient for them to move on.
Rather than removing the asterisk or changing its color, I would suggest adding additional feedback such as a check icon or a short message.
Below is an example from Twitter that illustrates my point:
There are 2 asterisks commonly used in web forms:
- Required fields
- An error in the input (not matching the rules)
If you are using an asterisk for a required field, it is acting as a visual cue that the field is required. If you decide to remove it once the user types, what you are basically signally is the field is no longer required. Which is quite confusing. The requirement is permanent and thus the asterisk should also be there permanently.
If you decide to change the colors, you need to give the user a feedback on what the change in color indicates. If, Red asterisk = required field, what does black asterisk mean? Accepted field?
A good interaction which many forms do is, on-the-fly-validation. When the user finishes typing a field, it is validated against the rules and a green tick is placed if it passes, along with an occasional text.
'Tick - Username is available'
I think the asterisk should stay there. There is no point in removing it and doing so might confuse the user