2009-01-13 8 views
22

मेरे परीक्षण में, मेरे पास प्रदर्शित करने के लिए दोनों सेट 2 स्पैन हैं: दृश्यता के लिए सीमा के साथ इनलाइन-ब्लॉक। फ़ायरफ़ॉक्स प्रत्येक अवधि के बीच स्थान प्रस्तुत करता है। मार्जिन सेटिंग भी: 0; पैडिंग: 0; इसे ठीक करने के लिए कुछ भी नहीं करता है। इनलाइन स्पैन तत्व को प्रदर्शित करने के लिए मेरी अपेक्षा: इनलाइन-ब्लॉक यह है कि 2 स्पैन एक दूसरे के खिलाफ फ्लश प्रस्तुत करते हैं, जैसे कि आपने 2 divs को बाएं या दाएं फ्लोट किया था। मुझे मिला एकमात्र "फिक्स" फ्लोट जोड़ने के लिए है: स्पैन के लिए बाएं या दाएं, लेकिन यह फ्लोट का उपयोग न करने की कोशिश करने के मेरे मूल उद्देश्य को हरा देता है। कोई विचार?फ़ायरफ़ॉक्स 3 डिस्प्ले के साथ स्पैन करने के लिए रिक्ति जोड़ता है: इनलाइन-ब्लॉक

<style> 
    span{ 
     border:2px solid #000; 

     display:inline-block; 

     padding:0; 
     margin:0; 
    } 
</style> 
<span>Test</span> 
<span>Test2</span> 

उत्तर

25

यह उन्हें अलग कर रहा है क्योंकि आपके पास उनके बीच की जगह है - नई लाइन।

+0

शानदार सीधे ले जाया। स्पष्ट। – Geuis

+0

यह मूल HTML है। – Bombe

+15

@ बॉम्बे हाँ तो मुझे लगता है कि एक सहायता साइट पर एक प्रश्न पूछना वास्तव में मेरे बारे में बेवकूफ़ है। हाँ, कंधे को जाना जाता है। तो, क्या आप फिर एयरलाइन टिकट या मेल ऑर्डर केचप खरीदने के लिए SO का उपयोग करते हैं? – Geuis

3

मुझे नहीं लगता कि स्थान प्रदान करने के दौरान मार्कअप में कई पंक्तियों पर स्पैन की अनुमति देने का कोई तरीका नहीं है?

नहीं वास्तव में है, लेकिन:

<span>...</span 
><span>...</span> 
2

इस बग नहीं प्यार। कुछ ऐसा जो आप विचार करना चाहते हैं, कंटेनर तत्व पर शब्द-अंतर को -1म तक सेट कर रहा है। मैं बस इस बग में खुद भाग गया हूं इसलिए मुझे यकीन नहीं है कि यह व्यावहारिक है लेकिन यह उस जगह को छुपाएगा।

+2

यह एक बग नहीं है, यह एक सुविधा है। इनलाइन-ब्लॉक बाहरी पर "इनलाइन" तत्व के रूप में व्यवहार करता है। यदि रिक्त स्थान हटा दिए गए थे, तो जब आप एक पैराग्राफ के अंदर '' डालते हैं, तो यह रिक्त स्थान को बाईं ओर और दाईं ओर "चूसना" होगा। – kikito

+0

हाँ यह उचित है, यह एक बग नहीं है। यह उस समय ऐसा लगा। उस स्थान को बंद करने की कोशिश करते समय अब ​​बड़ी समस्या ब्राउज़र के बीच असंगतता है। सबसे सुरक्षित शर्त सफेद जगह को एक वास्तविक दर्द को मैन्युअल रूप से बंद करना है। –

0

यदि आप शुद्ध एक्सएचटीएमएल प्रस्तुत कर रहे हैं (और इसकी अत्यधिक संभावना है कि आप नहीं हैं, तब भी जब तक आप उपयोगकर्ता को एक्सएमएल के रूप में उपयोगकर्ता की सेवा नहीं करते हैं, तो HTML नहीं) तब तक प्रदर्शित होगा जब आप उम्मीद कर रहे हैं ।

हालांकि उपरोक्त उल्लिखित HTML/XHTML भिन्नताओं के कारण, इसे एक ही स्थान के रूप में प्रस्तुत किया जाएगा।

5

आप लाइनों के बीच खाली जगह को हटाने के लिए टिप्पणियों का भी उपयोग कर सकते हैं।

<span>hou</span><!-- 
--><span>se#</span><!-- 
--><span>316</span><!-- outputs house#316 without spaces --> 

कुरूपता पर कोई टिप्पणी नहीं (यमक इरादा), लेकिन कभी कभी यह एक स्वीकार्य रास्ता मार्कअप सही ढंग से खड़े जबकि अभी भी सही ढंग से प्रदर्शित रखने के लिए है।

विषय बंद लेकिन महत्वपूर्ण: स्पैन पर इनलाइन-ब्लॉक का उपयोग करते समय, अक्सर बॉक्स-साइजिंग (-मोज़-बॉक्स-आकार: सीमा-बॉक्स; आदि) को चालू करने के लिए बहुत उपयोगी होता है जो सीमाओं को बनाता है & पैडिंग मापा जा सकता है तत्वों के अंदर से। इनलाइन-ब्लॉक स्पैन के साथ प्रतिशत का उपयोग करने का यह एकमात्र व्यावहारिक तरीका है, और कई संबंधित सिरदर्द बचा सकता है।

+0

टिप्पणियां एक साफ चाल है - मेरे लिए काम करती है। Loops जैसे टेम्पलेट तर्क के साथ काम करते समय सहायक ... और मोहक प्रणाली pesky सफेद जगह में छोड़ देता है (मैं तरल पदार्थ का उपयोग कर रहा हूँ)। –

3

रयान मिशेल के समाधान ने मेरे लिए अच्छा काम किया। मैं कुछ इस तरह के साथ समाप्त हो गया:

.container { word-spacing: -1em; } 
.container * { word-spacing: normal; } 
1

फिक्सिंग FF2.0 फ़ायर्फ़ॉक्स 2.0 एक छोटे से जटिल काम है के लिए एक ठीक लगता है, आप लागू नहीं कर सकते एक मानक ब्राउज़र ब्राउज़र के नए संस्करणों को प्रभावित किए बिना Firefox 2 लक्षित करने के लिए हैक । आप जेएस रूट पर जा सकते हैं लेकिन इन प्रकार के ब्राउज़र लक्ष्यीकरण को लंबे समय तक घुमाया जा सकता है और थोड़ा फ्लेकी लगता है। इस समस्या के लिए सबसे अच्छा फिक्स "प्रदर्शन" विशेषता के लिए "-मोज़-इनलाइन-स्टैक" मान का उपयोग करना है।

फ़ायरफ़ॉक्स 2 इनलाइन-ब्लॉक का समर्थन नहीं करता है, लेकिन यह मोज़िला विशिष्ट प्रदर्शन गुण '-मोज़-इनलाइन-स्टैक' का समर्थन करता है, जो इनलाइन-ब्लॉक की तरह प्रदर्शित होता है। जब हम इसे "डिस्प्ले: इनलाइन-ब्लॉक" से पहले जोड़ते हैं, तो एफएफ 2 "इनलाइन-ब्लॉक" घोषणा को अनदेखा करता है और रखता है -मोज़-इनलाइन-स्टैक। इनलाइन-ब्लॉक का समर्थन करने वाले ब्राउज़र इसका उपयोग करेंगे और पिछली डिस्प्ले प्रॉपर्टी को अनदेखा करेंगे।

.itemname { प्रदर्शन:

यहाँ एक उदाहरण है -moz-इनलाइन ढेर; डिस्प्ले: इनलाइन-ब्लॉक; }


इस उत्तर से http://www.soak.co.uk/blog/firefox-2-ie6-and-inline-block/

+0

एसओ में आपका स्वागत है। अब, कृपया अन्य लोगों के काम न करें और इसे स्वयं के रूप में उपयोग करें। विशेषता हमेशा आवश्यक है। – Will

संबंधित मुद्दे