I'm trying to understand how visually hidden labels fit within the accessibility and the WCAG 2.1 spec. It seems to me that as long as an input has a programatically associated label (whether that be a label element or through ARIA), it is compliant.
I did find that SC 2.5.3 has a note which states:
Note that where a visible text label does not exist for a component, this Success Criterion does not apply to that component.
However, I'm a little unsure how a sighted user who uses voice control would be able to use an input with a visually hidden label. Would they simply have to guess at the label name? Are there any other cases like this where a WCAG-compliant input would not be accessible because of a hidden?
I'm hoping somebody with a bit more accessibility knowledge could help guide me on this! Any comments on the general usability of inputs without a visible label are also much appreciated.