जरूरी! ऊर्ध्वाधर केंद्र माता-पिता की ऊंचाई के सापेक्ष है
यदि आप जिस तत्व को केंद्र में लाने का प्रयास कर रहे हैं, उसके माता-पिता की कोई परिभाषित ऊंचाई नहीं है
, तो कोई भी लंबवत केंद्र समाधान नहीं करेगा!
अब, बूटस्ट्रैप 4 में वर्टिकल सेंटरिंग पर ...
पूर्ण-ऊँचाई बनाने के लिए आप नए फ्लेक्सबॉक्स और आकार की उपयोगिताओं का उपयोग कर सकते हैं । इन विकल्पों के लिए अतिरिक्त CSS की आवश्यकता नहीं होती है (सिवाय इसके कि कंटेनर की ऊंचाई (जैसे: html, निकाय) 100% होनी चाहिए )।container
display: flex
align-self-center
फ्लेक्सबॉक्स बच्चे पर विकल्प 1
<div class="container d-flex h-100">
<div class="row justify-content-center align-self-center">
I'm vertically centered
</div>
</div>
https://www.codeply.com/go/fFqaDe5Oey
align-items-center
Flexbox माता-पिता पर विकल्प 2 ( .row
है display:flex; flex-direction:row
)
<div class="container h-100">
<div class="row align-items-center h-100">
<div class="col-6 mx-auto">
<div class="jumbotron">
I'm vertically centered
</div>
</div>
</div>
</div>
https://www.codeply.com/go/BumdFnmLuk
justify-content-center
Flexbox माता-पिता पर विकल्प 3 ( .card
है display:flex;flex-direction:column
)
<div class="container h-100">
<div class="row align-items-center h-100">
<div class="col-6 mx-auto">
<div class="card h-100 border-primary justify-content-center">
<div>
...card content...
</div>
</div>
</div>
</div>
</div>
https://www.codeply.com/go/3gySSEe7nd
बूटस्ट्रैप 4 वर्टिकल सेंटरिंग पर अधिक
अब जब बूटस्ट्रैप 4 फ्लेक्सबॉक्स और अन्य उपयोगिताओं की पेशकश करता है , तो ऊर्ध्वाधर संरेखण के कई दृष्टिकोण हैं। http://www.codeply.com/go/WG15ZWC4lf
1 - ऑटो मार्जिन का उपयोग करते हुए लंबवत केंद्र:
लंबवत केंद्र का दूसरा तरीका उपयोग करना है my-auto
। यह तत्व को कंटेनर के भीतर केंद्रित करेगा। उदाहरण के लिए, h-100
पंक्ति को पूर्ण ऊँचाई देता है, और स्तंभ my-auto
को लंबवत रूप से केंद्र करेगा col-sm-12
।
<div class="row h-100">
<div class="col-sm-12 my-auto">
<div class="card card-block w-25">Card</div>
</div>
</div>
कार्यक्षेत्र केंद्र ऑटो मार्जिन का उपयोग डेमो
my-auto
ऊर्ध्वाधर y- अक्ष पर मार्जिन का प्रतिनिधित्व करता है और इसके बराबर है:
margin-top: auto;
margin-bottom: auto;
2 - फ्लेक्सबॉक्स के साथ लंबवत केंद्र:
चूंकि बूटस्ट्रैप 4 .row
अब है, इसलिए display:flex
आप इसे align-self-center
किसी भी कॉलम पर वर्टिकली सेंटर कर सकते हैं ...
<div class="row">
<div class="col-6 align-self-center">
<div class="card card-block">
Center
</div>
</div>
<div class="col-6">
<div class="card card-inverse card-danger">
Taller
</div>
</div>
</div>
या, पंक्ति में सभी को केंद्र में संरेखित करने के align-items-center
लिए संपूर्ण पर उपयोग .row
करें col-*
...
<div class="row align-items-center">
<div class="col-6">
<div class="card card-block">
Center
</div>
</div>
<div class="col-6">
<div class="card card-inverse card-danger">
Taller
</div>
</div>
</div>
कार्यक्षेत्र केंद्र विभिन्न ऊंचाई कॉलम डेमो
इस Q / A को केंद्र में देखें, लेकिन समान ऊंचाई बनाए रखें
3 - प्रदर्शन बर्तन का उपयोग कर कार्यक्षेत्र केंद्र:
बूटस्ट्रैप 4 प्रदर्शन utils कि के लिए इस्तेमाल किया जा सकता display:table
, display:table-cell
, display:inline
, आदि .. इन के साथ इस्तेमाल किया जा सकता लंबवत संरेखण utils संरेखित इनलाइन करने के लिए, इनलाइन-ब्लॉक या तालिका सेल तत्वों।
<div class="row h-50">
<div class="col-sm-12 h-100 d-table">
<div class="card card-block d-table-cell align-middle">
I am centered vertically
</div>
</div>
</div>
प्रदर्शन बर्तन डेमो का उपयोग कर कार्यक्षेत्र केंद्र
अधिक उदाहरण
वर्टिकल सेंटर में <div>
वर्टिकल सेंटर इमेज .row in .container
वर्टिकल सेंटर और बॉटम <div>
वर्टिकल सेंटर चाइल्ड इन पेरेंट
वर्टिकल सेंटर फुल स्क्रीन जंबोट्रॉन
जरूरी! क्या मैंने ऊंचाई का उल्लेख किया है?
याद रखें कि ऊर्ध्वाधर केंद्रक मूल तत्व की ऊंचाई के सापेक्ष है । यदि आप अधिकांश मामलों में पूरे पृष्ठ पर केंद्र बनाना चाहते हैं, तो यह आपका सीएसएस होना चाहिए ...
body,html {
height: 100%;
}
या उपयोग min-height: 100vh
( min-vh-100
बूटस्ट्रैप में 4.1+) माता-पिता / कंटेनर पर। यदि आप माता-पिता के अंदर एक बाल तत्व को केंद्रित करना चाहते हैं। माता-पिता के पास एक परिभाषित ऊंचाई होनी चाहिए ।
इसे भी देखें:
बूटस्ट्रैप में वर्टिकल अलाइनमेंट 4
बूटस्ट्रैप 4 सेंटर वर्टिकल और हॉरिजॉन्टल एलाइनमेंट