A rampant web design antipattern is omitting <label> elements and using the placeholder attribute instead to create a 'clean, minimal' form input.
Why Placeholders Fail Accessibility and Usability:
The Bulletproof Standard:
Always use an explicit <label for="email-input">Email Address</label> bound programmatically to <input id="email-input">. Clicking the label also expands the click target by focusing the input!
Level 1 · Accessible interaction basics