क्या यह ऑटोफोकस = "ऑटोफोकस" या ऑटोफोकस है?


87

मुझे HTML के पूर्व संस्करणों (HTML5 से पहले) में सबसे अधिक (शायद सभी) विशेषताओं को याद करने की आवश्यकता है, जैसे मान रखने के लिए आवश्यक विशेषताओं को readonly="readonly"

क्या यह HTML5 और autofocusविशेषता के लिए सही है ?


1
stackoverflow.com/questions/1033944// का संभावित डुप्लिकेट क्योंकि दोनों बूलियन विशेषताओं के बारे में हैं (ध्वजांकित नहीं)
Ciro Santilli 郝海东 flow flow 事件

मैं सहमत हूँ कि वे समान हैं, लेकिन थोड़ा अलग हैं क्योंकि वे अलग-अलग विशेषताओं के बारे में पूछ रहे हैं।
डैरिल हेन

1
ऑटोफोकस केवल काम करता है। एफएफ, ओपेरा और क्रोम में इसका परीक्षण किया है
सोहेल आरिफ

जवाबों:


94

HTML में, आप अपनी पसंद के अनुसार या बिना मूल्यों के बूलियन विशेषताओं का उपयोग करते हैं। बूलियन, W3C के लिए, ऑटोफोकस की तरह ऐसे ही लिखा जा सकता है autofocusया autofocus="autofocus"या भीautofocus=""

अगर आप ऑटोफोकस नहीं चाहते हैं तो इसे न लिखें।

मुझे लगता है कि आप भ्रमित हैं क्योंकि XHTML को सभी विशेषताओं के लिए मानों की आवश्यकता है: attributes="values" :।

HTML में बूलियन विशेषता के उपयोग के बारे में कुछ जानकारी यहाँ दी गई है: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-microsyntaxes.html#boolean-attribute


19
XHTML का उल्लेख करने के लिए +1। एक्सएचटीएमएल की एक्सएमएल अनुरूपता केवल एक कारण है कि कभी भी ए disabled="disabled"। टैग को बंद करने के लिए एक ही बात जाती है। HTML में प्रत्येक टैग को बंद करने की आवश्यकता नहीं है (उदाहरण के लिए br या इनपुट) लेकिन चूंकि XHTML मान्य XML होना चाहिए, इसलिए आपको समापन टैग भी चाहिए।
टिम बुथ

4
"एक्सएचटीएमएल ही एक कारण है जिसके कारण कभी भी disabled="disabled""। और SGML ही एकमात्र कारण है, क्यों एक्सएचटीएमएल में silly="silly"बूल सिंटैक्स सिर्फ के बजाय है whatever="true", और एचटीएमएल ही एकमात्र कारण है जो this="false"इसका मतलब = सच हो सकता है। :)
एस.जे.

52

HTML5 युक्ति का उद्धरण और पक्के पर थोड़ा विस्तार करना:

http://www.w3.org/TR/html5/forms.html#autofocusing-a-form-control:-the-autofocus-attribute :

ऑटोफोकस विशेषता एक बूलियन विशेषता है।

http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes :

एक तत्व पर एक बूलियन विशेषता की उपस्थिति सही मूल्य का प्रतिनिधित्व करती है, और विशेषता की अनुपस्थिति झूठे मूल्य का प्रतिनिधित्व करती है।

यदि विशेषता मौजूद है, तो इसका मान या तो खाली स्ट्रिंग होना चाहिए या ऐसा मान होना चाहिए जो विशेषता के विहित नाम के लिए ASCII केस-असंवेदनशील मेल है, जिसमें कोई अग्रणी या अनुगामी व्हॉट्सएप नहीं है।

निष्कर्ष :

निम्नलिखित मान्य, समकक्ष और सत्य हैं :

<input type="text" autofocus />
<input type="text" autofocus="" />
<input type="text" autofocus="autofocus" />
<input type="text" autofocus="AuToFoCuS" />

निम्नलिखित अमान्य हैं :

<input type="text" autofocus="0" />
<input type="text" autofocus="1" />
<input type="text" autofocus="false" />
<input type="text" autofocus="true" />

विशेषता की अनुपस्थिति झूठी के लिए एकमात्र मान्य सिंटैक्स है :

<input type="text"/>

सिफ़ारिश करना

यदि आप वैध XHTML लिखने के बारे में परवाह करते हैं autofocus="autofocus", <input autofocus>तो अमान्य है और अन्य विकल्प कम पठनीय हैं। एल्स, बस <input autofocus>कम उपयोग करें ।


1
"अगर आपको परवाह है ... XHTML"। नहीं। मर जाने दो।
डेम पिलाफियान

22

नहीं , यह विशेषता बताने के लिए पर्याप्त है। HTML 4 में भी यही तरीका था ।

कई विशेषताएं बूलियन विशेषता हैं । एक तत्व पर बूलियन विशेषता की उपस्थिति सही मूल्य का प्रतिनिधित्व करती है, और विशेषता की अनुपस्थिति झूठे मूल्य का प्रतिनिधित्व करती है।

यदि विशेषता मौजूद है, तो इसका मान या तो खाली स्ट्रिंग होना चाहिए या ऐसा मान होना चाहिए जो विशेषता के विहित नाम के लिए ASCII केस-असंवेदनशील मेल है, जिसमें कोई अग्रणी या अनुगामी व्हॉट्सएप नहीं है।

उदाहरण:

<label><input type=checkbox checked name=cheese disabled> Cheese</label>

10
स्वीकार किए गए उत्तर को टिम दिया ... उसे आपके से अधिक प्रतिनिधि की आवश्यकता है :)
डार्लिन हेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.