में इस उदाहरण छवि केंद्रित नहीं है। क्यों? मेरा ब्राउज़र विंडोज़ 7 पर Google Chrome v10 है, IE नहीं।
<img src="/img/logo.png" style="margin:0px auto;"/>
में इस उदाहरण छवि केंद्रित नहीं है। क्यों? मेरा ब्राउज़र विंडोज़ 7 पर Google Chrome v10 है, IE नहीं।
<img src="/img/logo.png" style="margin:0px auto;"/>
जवाबों:
जोड़ें display:block;
और यह काम करेगा। छवियाँ डिफ़ॉल्ट रूप से इनलाइन होती हैं
स्पष्ट करने के लिए, किसी block
तत्व के लिए डिफ़ॉल्ट चौड़ाई auto
निश्चित रूप से युक्त तत्व की पूरी उपलब्ध चौड़ाई को भरती है।
हाशिये पर सेट करके auto
, ब्राउज़र शेष स्थान को margin-left
आधा और अन्य आधे को असाइन करता है margin-right
।
margin:auto
किसी वस्तु को प्रवाह में केन्द्रित करने के लिए आवश्यक हैं, तो आप एक विस्तृत उत्तर देंगे । ( display:block
या display:table
, position:static
या position:relative
, आदि)
0px auto
करने के लिए सिर्फ auto
यह अभी भी काम नहीं करता है।
कुछ परिस्थितियों में और विरासत (जैसे आईई, छिपकली, वेबकिट के पिछले संस्करणों के रूप में), के साथ तत्वों position:relative;
की रोकथाम करेगा margin:0 auto;
काम करने से, भले ही top
, right
, bottom
, और left
सेट नहीं हैं।
तत्व को position:static;
(डिफ़ॉल्ट) पर सेट करना इन परिस्थितियों में इसे ठीक कर सकता है। आम तौर पर, एक निर्दिष्ट चौड़ाई वाले ब्लॉक स्तर के तत्व या margin:0 auto;
तो स्थिति relative
या static
स्थिति का उपयोग करके सम्मान करेंगे ।
margin: 0 auto
जब तक वे कोई फ़्लोट और एक निर्दिष्ट चौड़ाई वाले ब्लॉक तत्व नहीं होते हैं, तब तक अपेक्षाकृत तैनात तत्वों पर ठीक काम करता है ...
float
और display
उस व्यवहार को बदल सकते हैं।
आप ऑटो चौड़ाई div का उपयोग कर केंद्र कर सकते हैं display:table;
div{
margin: 0px auto;
float: none;
display: table;
}
मेरे मामले में समस्या यह थी कि मैंने बिना चौड़ाई के न्यूनतम और अधिकतम चौड़ाई निर्धारित की थी ।
position:static
, एक निश्चित width:
सेट होना चाहिए और एक display:block
तत्व होना चाहिए
जब भी हम चौड़ाई जोड़ते हैं और जोड़ते हैं margin:auto
, मुझे लगता है कि यह काम नहीं करेगा। यह मेरे अनुभव से है। चौड़ाई यह विचार देती है कि वास्तव में इसे समान मार्जिन प्रदान करने की आवश्यकता है।
इसके लिए एक विकल्प है margin-left:auto; margin-right: auto;
या margin:0 auto;
जो इसका उपयोग करता है वह position:absolute;
यह है:
आप तत्व की बाईं स्थिति को 50% ( left:50%;
) पर सेट करते हैं, लेकिन यह तत्व को सही ढंग से केंद्रित करने के लिए इसे सही ढंग से केंद्रित नहीं करेगा, आपको इसे देने की आवश्यकता है यह की चौड़ाई के शून्य से आधे का मार्जिन, जो आपके तत्व को पूरी तरह से केंद्र में रखेगा
यहाँ एक उदाहरण है: http://jsfiddle.net/35ERq/3/