পরিবর্তে ব্যবহার align-self: center
ব্যবহার করুন align-items: center
।
পরিবর্তন flex-direction
বা ব্যবহারের দরকার নেই text-align
।
এটিকে সমস্ত কাজ করতে একটি কোড সমন্বয় সহ আপনার কোড এখানে রয়েছে:
ul {
height: 100%;
}
li {
display: flex;
justify-content: center;
/* align-self: center; <---- REMOVE */
align-items: center; /* <---- NEW */
background: silver;
width: 100%;
height: 20%;
}
align-self
সম্পত্তি প্রযোজ্য আনমন আইটেম । ব্যতীত আপনার li
কোনও ফ্লেক্স আইটেম নয় কারণ এর পিতামাতা - এর ul
- নেই display: flex
বা display: inline-flex
প্রয়োগ নেই।
সুতরাং, এটি ul
কোনও ফ্লেক্স ধারক নয়, এটি li
কোনও ফ্লেক্স আইটেম নয় এবং align-self
এর কোনও প্রভাব নেই।
align-items
সম্পত্তি অনুরূপ align-self
ছাড়া এটা প্রযোজ্য আনমন পাত্রে ।
যেহেতু এটি li
একটি ফ্লেক্স ধারক, align-items
তাই শিশু উপাদানগুলিকে উল্লম্বভাবে কেন্দ্র করতে ব্যবহার করা যেতে পারে।
* {
padding: 0;
margin: 0;
}
html, body {
height: 100%;
}
ul {
height: 100%;
}
li {
display: flex;
justify-content: center;
/* align-self: center; */
align-items: center;
background: silver;
width: 100%;
height: 20%;
}
<ul>
<li>This is the text</li>
</ul>
কোডপেন ডেমো
প্রযুক্তিগতভাবে, এখানে কীভাবে align-items
এবং কীভাবে align-self
কাজ করা ...
align-items
সম্পত্তি (ধারক দিকে) ডিফল্ট মান সেট করে align-self
(আইটেম উপর)। সুতরাং, align-items: center
মানে সমস্ত ফ্লেক্স আইটেম সেট করা হবে align-self: center
।
তবে আপনি align-self
স্বতন্ত্র আইটেমগুলিতে সামঞ্জস্য করে এই ডিফল্টটিকে ওভাররাইড করতে পারেন ।
উদাহরণস্বরূপ, আপনি সমান উচ্চতার কলামগুলি চাইতে পারেন, তাই ধারকটি সেট করা আছে align-items: stretch
। তবে, একটি আইটেম অবশ্যই শীর্ষে পিন করা উচিত, তাই এটি সেট করা আছে align-self: flex-start
।
উদাহরণ
পাঠ্যটি কীভাবে একটি ফ্লেক্স আইটেম?
কিছু লোক হয়তো ভাবছেন যে কীভাবে পাঠানো একটি রান ...
<li>This is the text</li>
এর একটি শিশু উপাদান li
।
কারণটি হ'ল যে পাঠ্যটি কোনও ইনলাইন-স্তরের উপাদান দ্বারা স্পষ্টভাবে মোড়ানো হয়নি তা একটি ইনলাইন বাক্স দ্বারা আলগোরিদিমভাবে মোড়ানো। এটি এটিকে অনামী ইনলাইন উপাদান এবং পিতামাতার সন্তান করে তোলে ।
সিএসএস স্পেস থেকে:
9.2.2.1 বেনামে ইনলাইন বাক্স
কোনও ব্লক ধারক উপাদানের ভিতরে সরাসরি থাকা যে কোনও পাঠ্য অবশ্যই বেনামে ইনলাইন উপাদান হিসাবে বিবেচিত হবে।
ফ্লেক্সবক্স স্পেসিফিকেশন অনুরূপ আচরণের জন্য সরবরাহ করে।
4. ফ্লেক্স আইটেম
ফ্লেক্স ধারকের প্রতিটি ইন-ফ্লো শিশু একটি ফ্লেক্স আইটেম হয়ে যায় এবং প্রতিটি ফ্লেক্স ধারকটির ভিতরে থাকা পাঠ্যের প্রতিটি মজাদার রান একটি বেনামি ফ্লেক্স আইটেমে আবৃত থাকে।
সুতরাং, এর পাঠ্যটি li
একটি নমনীয় আইটেম।
align-items: baseline
। বিভিন্ন ইউনিকোড চর ইত্যাদি থেকে বিভিন্ন উচ্চতার জন্য ভাল