2011-11-18 15 views
23

मैं हैइनलाइन-ब्लॉक साफ़ करना?

.centered-holder { 
    margin-left: auto; 
    margin-right: auto; 
    clear: left; 
    display: inline-block; 
} 

तो प्रत्येक पंक्ति में

<div class="centered-holder">misc content 1</div> 
<div class="centered-holder">misc content 2</div> 
<div class="centered-holder">misc content 3</div> 

मैं केवल चाहते हैं एक अधिकतम, यह वास्तव में संभव किसी भी तरह है? यह एक आईफोन एचटीएमएल 5 ऐप है, इसलिए पुराने ब्राउजर प्रतिबंध एक मुद्दा नहीं हैं।

+4

'clear' संपत्ति केवल जारी प्रभावित तत्वों, आप कुछ भी नहीं जारी करना होगा। – animuson

+0

वास्तव में एक फ़्लोट किए गए तत्व पर लागू होने की आवश्यकता नहीं है, आप इसे पॉप-अप रोकने के लिए इनलाइन तत्व पर लागू कर सकते हैं। मुझे कुछ तुलनात्मक समाधान की आवश्यकता है – Baconbeastnz

+0

नहीं, इसे * फ्लोट * तत्व पर लागू करने की आवश्यकता नहीं है, लेकिन यह केवल * फ़्लोट * तत्वों को साफ़ करता है। यह एक इनलाइन-ब्लॉक तत्व को 'स्पष्ट' नहीं करेगा क्योंकि यह बाएं या दाएं तरफ 'फ़्लोटिंग' नहीं है।यदि आप उन्हें अलग-अलग लाइनों पर चाहते हैं, तो नीचे दिए गए समाधान को काम करना चाहिए। शायद आप जो भी करने की कोशिश कर रहे हैं उसका एक बेहतर उदाहरण प्रदान कर सकते हैं। – animuson

उत्तर

36

अपने सीएसएस घोषणाओं और अपने मार्कअप की निर्भर है, लेकिन आप पैरेंट कंटेनर पर इस सीएसएस घोषणा डाल करने के लिए कोशिश कर सकते हैं: यदि आप एक ब्लॉक तत्व को .centered-holder को बदलने के लिए से बचने के

white-space: pre-line; 

इस दृष्टिकोण के साथ, और आप अभी भी पैरेंट कंटेनर पर text-align:center उदाहरण के लिए उपयोग कर सकते हैं।


पूर्व लाइन - यह मान एक भी अंतरिक्ष चरित्र में संक्षिप्त करने के लिए खाली स्थान के के दृश्यों का कारण होगा। पंक्ति ब्रेक भरने के लिए लाइन लाइन ब्रेक और मार्कअप में नई लाइनों पर (या उत्पन्न सामग्री में "\" की घटनाओं पर लाइन ब्रेक होंगे। दूसरे शब्दों में, यह सामान्य की तरह है, सिवाय इसके कि यह स्पष्ट लाइन ब्रेक का सम्मान करेगा।

आप सफेद-अंतरिक्ष के बारे में यहाँ और अधिक जानकारियां पा सकते हैं:


समाप्त करने के लिए, आप इन सीएसएस घोषणाओं का उपयोग कर सकते हैं:

.parent-container { 
    white-space: pre-line /* Create new line for each DIV */; 
    line-height:0 /* Mask the extra lines */; 
    *white-space: pre /*FixIE7*/; 
    *word-wrap: break-word /*FixIE7*/; 
} 

.centered-holder { 
    display: inline-block; 
    line-height:100% /* Restore a default line-height */; 
    *display: inline /*FixIE7*/; 
    *zoom: 1 /*FixIE7*/; 
} 

मुझे यह प्रश्न बहुत रोचक मिला, इसलिए मैं आईई 6-7 (pre-line और inline-block फिक्सेस) के लिए सीएसएस घोषणा भी देता हूं। यह कुछ अन्य लोगों के लिए उपयोगी होना चाहिए जिनकी एक समान समस्या है।

+3

अच्छा जवाब ...... + 1 – anglimasS

+1

धन्यवाद महान उत्तर:) पता चला है कि आप अपनी मुख्य सामग्री पट्टी में केवल ब्लॉक भी कर सकते हैं, फिर टेक्स्ट-एलाइन को दबाएं: केंद्र; उन पर। फिर अंदर इनलाइन-ब्लॉक डालें। ऐसा करने से आपकी सामग्री केंद्रित होती है (क्योंकि मूल ब्लॉक पूर्ण चौड़ाई फैलता है, और इनलाइन-ब्लॉक को अंदर केंद्रित करता है) – Baconbeastnz

+0

आपके पास यह ब्रो :) है! –

4

यदि आप display: inline-block; हटाते हैं तो वे दूसरे के शीर्ष पर एक को ढेर करेंगे।

ब्लॉक-स्तर तत्व नई लाइन पर शुरू होते हैं, और एक डीआईवी डिफ़ॉल्ट रूप से ब्लॉक-स्तर होता है।

+1

हाँ मुझे पता है कि। बात यह है कि मुझे टेक्स्ट-एलाइन मिला है: मेरे कंटेनर पर केंद्र मुझे ऑटो सेंटरिंग क्षमता पसंद है, ऐसा लगता है कि मुझे इसे JS – Baconbeastnz

+0

के साथ करना पड़ सकता है, आप हमेशा जोड़ सकते हैं: । केंद्रित-धारक: { सामग्री के बाद :"\ए"; } हालांकि एक हैक की तरह लगता है। – enduro

1

या आप इनलाइन-ब्लॉक के बाद डिस्प्ले ब्लॉक के साथ केवल एक div जोड़ सकते हैं।

.centered-holder { 
    margin-left: auto; 
    margin-right: auto; 
    clear: left; 
    display: inline-block; 
} 
.clear-inline { 
    display: block; 
} 

फिर

<div class="centered-holder">misc content 1</div> 
<div class="clear-inline"></div> 
<div class="centered-holder">misc content 2</div> 
<div class="clear-inline"></div> 
<div class="centered-holder">misc content 3</div> 
<div class="clear-inline"></div> 
+3

यह वास्तव में बुरा अभ्यास है और बहुत हैकी। – 30secondstosam

+3

अच्छा, यह सीएसएस है। हैकी यह दूसरा नाम है। – zundi

+1

यह स्यूडोलेमेंट्स के साथ भी पूरा किया जा सकता है, जिससे इसे थोड़ा कम हैकी बना दिया जाता है। Http://codepen.io/ivancamilov/pen/jqmWEL देखें –

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