2010-09-29 3 views
11

के साथ div को span में कनवर्ट करें मेरे पास कुछ div एस है जो पाद लेख और शरीर के बीच थोड़ा सा स्थान बनाता है। तो मैं एक div को एक अवधि में परिवर्तित करना चाहता हूं। लेकिन जब मैं ऐसा करता हूं, तो यह पाद लेख की सामग्री को थोड़ा सा गड़बड़ कर देता है।सीएसएस

मैं यह कैसे कर सकता हूं और उन शैलियों को रख सकता हूं जो पहले से ही पाद लेख के लिए परिभाषित किए गए हैं?

अग्रिम धन्यवाद!

संपादित

div.footer { 
width: 986px; 
margin: 0 auto; 
padding-bottom:18px; 
border: 0; 
text-align: left; 
color:#000000; 
} 
+0

क्या आप कुछ एचटीएमएल और सीएसएस पोस्ट कर सकते हैं ताकि हम आपकी मदद कर सकें? या एक लाइव उदाहरण महान होगा। – Kyle

+2

एह ... आप निश्चित रूप से 'div' तत्व को' span' तत्व में परिवर्तित करने से आपकी समस्या का समाधान करेंगे? यह सीएसएस पोजिशनिंग क्विर्क –

+0

को इस्त्री करने के सामान्य तरीकों में से एक नहीं है हां, क्योंकि एक दूसरे के बगल में 2 divs हैं जो शरीर और पाद लेख के बीच एक हग अंतर बनाता है। अवधि के साथ इस अंतर को कम किया जा सकता है। @ केली सेवनोक्स, यह बहुत बड़ा है और कोई लाइव उदाहरण एटीएम नहीं है। – Yustme

उत्तर

17

करने के लिए सेट position:relative; top:-[yourownnumber]px की padding जैसा कि आप पहले ही जानते हैं, <div> और <span> के बीच का अंतर केवल एक है कि display:block; और दूसरा display:inline; पर डिफ़ॉल्ट है। एक कार्य को दूसरे के रूप में बनाने के लिए, बस डिस्प्ले शैली को दूसरे प्रकार पर सेट करें।

हालांकि, आपने पहले ही कहा है कि आपने यह कोशिश की है और यह उस प्रभाव को प्राप्त नहीं किया है जिसे आप ढूंढ रहे थे। एक और प्रदर्शन संपत्ति है, जो अच्छी तरह से कम जाना जाता है, लेकिन दोनों के बीच एक आधे रास्ते घर प्रदान करता है:

display:inline-block; 

क्या यह करता है यह इनलाइन प्रदर्शित है, लेकिन अभी भी ब्लॉक की तरह गुणों के साथ। (यह मूल रूप से <img> टैग डिफ़ॉल्ट रूप से कैसे काम करता है)।

क्या यह वह उत्तर हो सकता है जिसे आप ढूंढ रहे हैं?

+0

धन्यवाद यह मेरे लिए किया था! – Yustme

0

अपने अवधि overflow:auto; जोड़ने का प्रयास करें। इसके अलावा display:block;

+0

यह ओप से पूछा गया है कि यह विपरीत है। – Kyle

+0

नहीं, ऐसा नहीं है, स्पैन तत्व को अधिकांश बार ब्लॉक ऑब्जेक्ट के रूप में व्यवहार करना शुरू करने के लिए कुछ अतिरिक्त विशेषताओं की आवश्यकता होती है और अंतर्निहित डीआईवी पर 'गिरावट' नहीं होती है। – Ben

+5

"तो मैं एक div को एक अवधि में परिवर्तित करना चाहता हूं।" आपने एक स्पैन को एक div में कनवर्ट करने के लिए पोस्ट किया है :) – Kyle

3

जोड़ने अवधि के लिए एक div परिवर्तित करने के लिए, बस जोड़ें:

.myDiv 
{ 
    display: inline; 
} 

लेकिन मैं सच में लगता है कि इस समाधान आप के बाद कर रहे हैं है नहीं कर रहा हूँ।

+0

मैंने कोशिश की, लेकिन यह काम नहीं किया। यह उन सभी अन्य शैलियों को इसके साथ नहीं ले रहा है। यह सिर्फ बाईं ओर संरेखित है। – Yustme

+0

क्योंकि यह अब एक इनलाइन तत्व है, जैसा कि हमने कहा था, यह एक div को एक अवधि में परिवर्तित करना सही समाधान नहीं है :) – Kyle

-1

अगर यह जोड़ने के लिए:

position:relative /*optional*/ 
float:left; 
left:0px; 

मैं हमेशा ऐसा करने से पहले मैं अवधि का उपयोग करने के लिए जब मैं पहली बार सीएसएस मैं हमेशा अपने तत्व सामग्री के लिए क्या करना सीखना पता है।

0

यदि पाद लेख और शरीर के बीच बहुत अधिक जगह है, तो क्या आपने देखा है कि प्रभावित divs पर मार्जिन और पैडिंग क्या हैं? क्या कुछ ऊंचाई या न्यूनतम ऊंचाई है जो सामग्री के प्राकृतिक अंत से शरीर के भीतर कुछ सामग्री को लम्बा कर रही है? फायरबग इसके लिए एक अच्छा उपकरण है।

div एक ब्लॉक तत्व है। अन्य ब्लॉक तत्व अनुच्छेद, शीर्षक, सूचियां, आदि हैं। अवधि एक इनलाइन तत्व है। अन्य इनलाइन तत्व मजबूत, छवि, एंकर आदि हैं आपको अभी भी ब्लॉक-स्तर तत्व में निहित होने की आवश्यकता है।

1

उद्धरण:

वहाँ 2 divs के बगल में eachother है जो शरीर और footerbody और पाद के बीच एक ह्यूग खाई पैदा

समाधान:

  • से खाली div (ओं) निकालें एचटीएमएल
  • खाली div (रों) निकालें display:none
  • जोड़कर कम div (ओं) का height
  • कम margin या div (रों)
  • .footer
+0

धन्यवाद यह मेरे लिए भी किया गया है! – Yustme

+0

आपका स्वागत है। –