अन्य उत्तरों को यहाँ संक्षेप में प्रस्तुत करना है - यदि आप <li>
सूची आइटम में गोलियों और पाठ के बीच के स्थान पर बेहतर नियंत्रण चाहते हैं , तो आपके विकल्प निम्न हैं:
(1) एक पृष्ठभूमि छवि का उपयोग करें:
<style type="text/css">
li {
list-style-type:none;
background-image:url(bullet.png);
}
</style>
<ul>
<li>Some text</li>
</ul>
लाभ:
- आप बुलेट के लिए अपनी इच्छित किसी भी छवि का उपयोग कर सकते हैं
- आप
background-position
पिक्सेल, ईएमएस या% का उपयोग करके पाठ के संबंध में कहीं भी छवि को स्थिति में लाने के लिए सीएसएस का उपयोग कर सकते हैं
नुकसान:
- आपके पृष्ठ पर एक अतिरिक्त (यद्यपि छोटी) छवि फ़ाइल जोड़ता है, जिससे पृष्ठ का वजन बढ़ जाता है
- यदि कोई उपयोगकर्ता अपने ब्राउज़र पर पाठ का आकार बढ़ाता है, तो गोली मूल आकार में रहेगी। पाठ का आकार बढ़ने पर यह आगे भी स्थिति से बाहर हो जाएगा
- यदि आप चौड़ाई के लिए केवल प्रतिशत का उपयोग करते हुए एक 'उत्तरदायी' लेआउट विकसित कर रहे हैं, तो बुलेट को प्राप्त करना मुश्किल हो सकता है, जहाँ आप इसे स्क्रीन की चौड़ाई से अधिक चाहते हैं
2. <li>
टैग पर पैडिंग का उपयोग करें
<style type="text/css">
ul {padding-left:1em}
li {padding-left:1em}
</style>
<ul>
<li>Some text</li>
</ul>
लाभ:
- कोई छवि नहीं = 1 कम फ़ाइल डाउनलोड करने के लिए
- पर गद्दी को समायोजित करके
<li>
, आप जितना जोड़ सकते हैं अतिरिक्त की तरह गोली और आप के रूप में पाठ के बीच क्षैतिज स्थान
- यदि उपयोगकर्ता पाठ का आकार बढ़ाता है, तो रिक्ति और बुलेट का आकार आनुपातिक रूप से होना चाहिए
नुकसान:
- ब्राउज़र डिफ़ॉल्ट की तुलना में बुलेट को पाठ के किसी भी करीब नहीं ले जा सकता
- सीएसएस के अंतर्निहित बुलेट प्रकारों के आकार और आकार तक सीमित
- बुलेट का रंग टेक्स्ट जैसा होना चाहिए
- गोली की ऊर्ध्वाधर स्थिति पर कोई नियंत्रण नहीं है
(३) पाठ को एक अतिरिक्त <span>
तत्व में लपेटें
<style type="text/css">
li {
padding-left:1em;
color:#f00; /* red bullet */
}
li span {
display:block;
margin-left:-0.5em;
color:#000; /* black text */
}
</style>
<ul>
<li><span>Some text</span></li>
</ul>
लाभ:
- कोई छवि नहीं = 1 कम फ़ाइल डाउनलोड करने के लिए
- आप विकल्प के साथ की तुलना में गोली की स्थिति पर अधिक नियंत्रण होता (2) - आप इसे करीब पाठ करने के लिए स्थानांतरित कर सकते हैं (हालांकि मेरे सबसे अच्छे प्रयासों के बावजूद ऐसा लगता है आप को जोड़कर ऊर्ध्वाधर स्थिति नहीं बदल सकते हैं
padding-top
करने के लिए <span>
कोई और हो सकता है। इसके लिए एक समाधान, हालांकि ...)
- बुलेट पाठ के लिए एक अलग रंग हो सकता है
- यदि उपयोगकर्ता अपने पाठ का आकार बढ़ाता है, तो बुलेट को अनुपात में स्केल करना चाहिए (बशर्ते कि आप पेसिंग और मार्जिन सेट करें ems px नहीं)
नुकसान:
- एक अतिरिक्त असमान तत्व की आवश्यकता होती है (यह वास्तविक जीवन में आपकी तुलना में SO पर अधिक मित्रों को खो देगा;) लेकिन यह उन लोगों के लिए कष्टप्रद है जो अपने कोड को जितना संभव हो उतना दुबला और कुशल होना पसंद करते हैं, और यह प्रस्तुति और सामग्री के पृथक्करण का उल्लंघन करता है। वह HTML / CSS ऑफ़र करने वाला है)
- गोली के आकार और आकार पर कोई नियंत्रण नहीं
यहां CSS4 में कुछ नई सूची-शैली सुविधाओं के लिए उम्मीद की जा रही है, इसलिए हम छवियों या एक्स्टा मार्क-अप का सहारा लिए बिना स्मार्ट बुलेट बना सकते हैं :)