HTML Password ( <input type="password">
)
HTML Password क्या है?
HTML में पासवर्ड फील्ड बनाने के लिए हम <input type="password">
का उपयोग करते हैं। यह यूज़र द्वारा टाइप किए गए अक्षरों को डॉट/स्टार के रूप में छुपा देता है ताकि पासवर्ड स्क्रीन पर दिखाई न दे।
नोट: यह सिर्फ दिखावट (masking) है—सिक्योरिटी सर्वर-साइड (HTTPS, hashing) से आती है।
बेसिक सिंटैक्स
सामान्यतः उपयोग होने वाले Attributes
Attribute | काम |
---|---|
name | फील्ड का नाम (फॉर्म सबमिट होने पर key) |
id | लेबल/JS से जोड़ने के लिए यूनिक पहचान |
placeholder | बॉक्स में हल्का सा गाइड टेक्स्ट |
required | फील्ड को अनिवार्य बनाता है |
minlength / maxlength | अक्षरों की न्यूनतम/अधिकतम सीमा |
pattern | Regex से कस्टम वैलिडेशन (जैसे 1 uppercase, 1 digit) |
autocomplete | ब्राउज़र को संकेत: "current-password" या "new-password" |
readonly / disabled | पढ़ने-योग्य या निष्क्रिय |
inputmode | सामान्यतः पासवर्ड में उपयोग नहीं (text input के लिए) |
spellcheck="false" | स्पेलचेक बंद—अच्छा अभ्यास |
उदाहरण pattern: कम से कम 8 अक्षर, 1 uppercase, 1 digit, 1 special
उदाहरण 1: Simple Password Form
उदाहरण 2: Show/Hide Password (टॉगल)
उदाहरण 3: New Password + Confirm Password वैलिडेशन
बेसिक Password Strength Meter (सरल JS)
Accessibility व UX Best Practices
-
हमेशा
<label for="...">
दें ताकि स्क्रीन-रीडर friendly रहे। -
त्रुटि संदेश स्पष्ट रखें और
title
/aria-describedby
से गाइड करें। -
मोबाइल पर ऑटो-कैपिटलाइज़/स्पेल-चेक से बचें:
spellcheck="false"
। -
Show/Hide टॉगल दें, पर default mask ही रखें।
Security Best Practices (बहुत ज़रूरी)
-
HTTPS इस्तेमाल करें (TLS)।
-
पासवर्ड कभी plain text में न रखें; सर्वर-साइड पर strong hashing (bcrypt/argon2 + salt) करें।
-
न्यूनतम आवश्यकताएँ लागू करें:
minlength
,pattern
, और रेट-लिमिटिंग/ब्रूट-फोर्स प्रोटेक्शन। -
autocomplete="new-password"
रजिस्ट्रेशन/रीसेट फॉर्म में, औरautocomplete="current-password"
लॉगिन में दें। -
पासवर्ड policies को यूज़र को पहले से बता दें (UI hints)।
आम गलतियाँ
-
केवल फ्रंट-एंड pattern पर निर्भर रहना (सर्वर-साइड वैलिडेशन ज़रूरी)।
-
पासवर्ड को LocalStorage/Log में लिख देना।
-
ईमेल से plain password भेजना (मत करें)।
-
placeholder को label की तरह उपयोग करना (label अलग दें)।
No comments:
Post a Comment