ফ্লেক্স
প্রতিক্রিয়াশীল ফ্লেক্সবক্স ইউটিলিটিগুলির সম্পূর্ণ স্যুটের সাথে গ্রিড কলাম, নেভিগেশন, উপাদান এবং আরও অনেক কিছুর বিন্যাস, প্রান্তিককরণ এবং আকার দ্রুত পরিচালনা করুন। আরো জটিল বাস্তবায়নের জন্য, কাস্টম CSS প্রয়োজন হতে পারে।
displayএকটি ফ্লেক্সবক্স কন্টেইনার তৈরি করতে ইউটিলিটিগুলি প্রয়োগ করুন এবং সরাসরি শিশুদের উপাদানগুলিকে ফ্লেক্স আইটেমে রূপান্তর করুন। ফ্লেক্স পাত্রে এবং আইটেমগুলি অতিরিক্ত ফ্লেক্স বৈশিষ্ট্য সহ আরও সংশোধন করা যেতে পারে।
<div class="d-flex p-2 bd-highlight">I'm a flexbox container!</div>
<div class="d-inline-flex p-2 bd-highlight">I'm an inline flexbox container!</div>
.d-flexএবং এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান .d-inline-flex।
.d-flex.d-inline-flex.d-sm-flex.d-sm-inline-flex.d-md-flex.d-md-inline-flex.d-lg-flex.d-lg-inline-flex.d-xl-flex.d-xl-inline-flex
দিক উপযোগিতা সহ একটি ফ্লেক্স পাত্রে ফ্লেক্স আইটেমগুলির দিকনির্দেশ সেট করুন। বেশিরভাগ ক্ষেত্রে আপনি ব্রাউজার ডিফল্ট হিসাবে এখানে অনুভূমিক শ্রেণীটি বাদ দিতে পারেন row। যাইহোক, আপনি এমন পরিস্থিতির সম্মুখীন হতে পারেন যেখানে আপনাকে এই মানটি স্পষ্টভাবে সেট করতে হবে (যেমন প্রতিক্রিয়াশীল লেআউট)।
.flex-rowএকটি অনুভূমিক দিক (ব্রাউজার ডিফল্ট) সেট করতে বা .flex-row-reverseবিপরীত দিক থেকে অনুভূমিক দিক শুরু করতে ব্যবহার করুন।
<div class="d-flex flex-row bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
<div class="d-flex flex-row-reverse bd-highlight">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
.flex-columnএকটি উল্লম্ব দিকনির্দেশ সেট করতে বা .flex-column-reverseবিপরীত দিক থেকে উল্লম্ব দিক শুরু করতে ব্যবহার করুন।
<div class="d-flex flex-column bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
<div class="d-flex flex-column-reverse bd-highlight">
<div class="p-2 bd-highlight">Flex item 1</div>
<div class="p-2 bd-highlight">Flex item 2</div>
<div class="p-2 bd-highlight">Flex item 3</div>
</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান flex-direction।
.flex-row.flex-row-reverse.flex-column.flex-column-reverse.flex-sm-row.flex-sm-row-reverse.flex-sm-column.flex-sm-column-reverse.flex-md-row.flex-md-row-reverse.flex-md-column.flex-md-column-reverse.flex-lg-row.flex-lg-row-reverse.flex-lg-column.flex-lg-column-reverse.flex-xl-row.flex-xl-row-reverse.flex-xl-column.flex-xl-column-reverse
প্রধান অক্ষে ফ্লেক্স আইটেমগুলির প্রান্তিককরণ পরিবর্তন করতে ফ্লেক্সবক্স পাত্রে ইউটিলিটিগুলি ব্যবহার justify-contentকরুন (শুরু করার জন্য x-অক্ষ, যদি y-অক্ষ flex-direction: column)। start(ব্রাউজার ডিফল্ট), end, center, betweenবা থেকে চয়ন করুন around।
<div class="d-flex justify-content-start">...</div>
<div class="d-flex justify-content-end">...</div>
<div class="d-flex justify-content-center">...</div>
<div class="d-flex justify-content-between">...</div>
<div class="d-flex justify-content-around">...</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান justify-content।
.justify-content-start.justify-content-end.justify-content-center.justify-content-between.justify-content-around.justify-content-sm-start.justify-content-sm-end.justify-content-sm-center.justify-content-sm-between.justify-content-sm-around.justify-content-md-start.justify-content-md-end.justify-content-md-center.justify-content-md-between.justify-content-md-around.justify-content-lg-start.justify-content-lg-end.justify-content-lg-center.justify-content-lg-between.justify-content-lg-around.justify-content-xl-start.justify-content-xl-end.justify-content-xl-center.justify-content-xl-between.justify-content-xl-around
ক্রস অক্ষে ফ্লেক্স আইটেমগুলির প্রান্তিককরণ পরিবর্তন করতে ফ্লেক্সবক্স পাত্রে ইউটিলিটিগুলি ব্যবহার align-itemsকরুন (শুরু করার জন্য y-অক্ষ, যদি x-অক্ষ flex-direction: column)। start, end, center, baseline, বা stretch(ব্রাউজার ডিফল্ট) থেকে চয়ন করুন ।
<div class="d-flex align-items-start">...</div>
<div class="d-flex align-items-end">...</div>
<div class="d-flex align-items-center">...</div>
<div class="d-flex align-items-baseline">...</div>
<div class="d-flex align-items-stretch">...</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান align-items।
.align-items-start.align-items-end.align-items-center.align-items-baseline.align-items-stretch.align-items-sm-start.align-items-sm-end.align-items-sm-center.align-items-sm-baseline.align-items-sm-stretch.align-items-md-start.align-items-md-end.align-items-md-center.align-items-md-baseline.align-items-md-stretch.align-items-lg-start.align-items-lg-end.align-items-lg-center.align-items-lg-baseline.align-items-lg-stretch.align-items-xl-start.align-items-xl-end.align-items-xl-center.align-items-xl-baseline.align-items-xl-stretch
ফ্লেক্সবক্স align-selfআইটেমের ইউটিলিটিগুলি পৃথকভাবে ক্রস অক্ষে তাদের সারিবদ্ধকরণ পরিবর্তন করতে ব্যবহার করুন (শুরু করতে y-অক্ষ, x-অক্ষ থাকলে flex-direction: column)। একই বিকল্পগুলি থেকে চয়ন করুন align-items: start, end, center, baseline, বা stretch(ব্রাউজার ডিফল্ট)।
<div class="align-self-start">Aligned flex item</div>
<div class="align-self-end">Aligned flex item</div>
<div class="align-self-center">Aligned flex item</div>
<div class="align-self-baseline">Aligned flex item</div>
<div class="align-self-stretch">Aligned flex item</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান align-self।
.align-self-start.align-self-end.align-self-center.align-self-baseline.align-self-stretch.align-self-sm-start.align-self-sm-end.align-self-sm-center.align-self-sm-baseline.align-self-sm-stretch.align-self-md-start.align-self-md-end.align-self-md-center.align-self-md-baseline.align-self-md-stretch.align-self-lg-start.align-self-lg-end.align-self-lg-center.align-self-lg-baseline.align-self-lg-stretch.align-self-xl-start.align-self-xl-end.align-self-xl-center.align-self-xl-baseline.align-self-xl-stretch
.flex-fillসমস্ত উপলব্ধ অনুভূমিক স্থান গ্রহণ করার সময় তাদের সমান প্রস্থে জোর করতে ভাইবোন উপাদানগুলির একটি সিরিজে ক্লাসটি ব্যবহার করুন । সমান-প্রস্থ, বা ন্যায়সঙ্গত, নেভিগেশনের জন্য বিশেষভাবে দরকারী।
<div class="d-flex bd-highlight">
<div class="p-2 flex-fill bd-highlight">Flex item</div>
<div class="p-2 flex-fill bd-highlight">Flex item</div>
<div class="p-2 flex-fill bd-highlight">Flex item</div>
</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান flex-fill।
.flex-fill.flex-sm-fill.flex-md-fill.flex-lg-fill.flex-xl-fill
.flex-grow-*উপলভ্য স্থান পূরণ করতে একটি ফ্লেক্স আইটেমের বৃদ্ধির ক্ষমতা টগল করতে ইউটিলিটিগুলি ব্যবহার করুন । নীচের উদাহরণে, .flex-grow-1উপাদানগুলি সমস্ত উপলব্ধ স্থান ব্যবহার করে যা করতে পারে, বাকি দুটি ফ্লেক্স আইটেমকে তাদের প্রয়োজনীয় স্থানের অনুমতি দেয়।
<div class="d-flex bd-highlight">
<div class="p-2 flex-grow-1 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Third flex item</div>
</div>
.flex-shrink-*প্রয়োজনে ফ্লেক্স আইটেমের সঙ্কুচিত করার ক্ষমতা টগল করতে ইউটিলিটিগুলি ব্যবহার করুন । নীচের উদাহরণে, এর সাথে দ্বিতীয় ফ্লেক্স আইটেমটিকে .flex-shrink-1এটির বিষয়বস্তুকে একটি নতুন লাইনে মোড়ানোর জন্য বাধ্য করা হয়েছে, "সঙ্কুচিত" এর সাথে আগের ফ্লেক্স আইটেমের জন্য আরও জায়গা দেওয়ার জন্য .w-100।
<div class="d-flex bd-highlight">
<div class="p-2 w-100 bd-highlight">Flex item</div>
<div class="p-2 flex-shrink-1 bd-highlight">Flex item</div>
</div>
flex-growএবং এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান flex-shrink।
.flex-{grow|shrink}-0.flex-{grow|shrink}-1.flex-sm-{grow|shrink}-0.flex-sm-{grow|shrink}-1.flex-md-{grow|shrink}-0.flex-md-{grow|shrink}-1.flex-lg-{grow|shrink}-0.flex-lg-{grow|shrink}-1.flex-xl-{grow|shrink}-0.flex-xl-{grow|shrink}-1
আপনি যখন স্বয়ংক্রিয় মার্জিনের সাথে ফ্লেক্স অ্যালাইনমেন্ট মিশ্রিত করেন তখন ফ্লেক্সবক্স কিছু দুর্দান্ত জিনিস করতে পারে। স্বয়ংক্রিয় মার্জিনের মাধ্যমে ফ্লেক্স আইটেমগুলি নিয়ন্ত্রণ করার তিনটি উদাহরণ নীচে দেখানো হয়েছে: ডিফল্ট (কোনও স্বয়ংক্রিয় মার্জিন নেই), দুটি আইটেমকে ডানদিকে ঠেলে দেওয়া ( .mr-auto), এবং দুটি আইটেমকে বাম দিকে ঠেলে দেওয়া ( .ml-auto)৷
দুর্ভাগ্যবশত, IE10 এবং IE11 সঠিকভাবে ফ্লেক্স আইটেমগুলিতে স্বয়ংক্রিয় মার্জিন সমর্থন করে না যার অভিভাবকের একটি অ-ডিফল্ট justify-contentমান রয়েছে৷ আরো বিস্তারিত জানার জন্য এই StackOverflow উত্তর দেখুন।
<div class="d-flex bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3">
<div class="mr-auto p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex bd-highlight mb-3">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="ml-auto p-2 bd-highlight">Flex item</div>
</div>
align-itemsউল্লম্বভাবে , flex-direction: column, এবং margin-top: autoবা মিশ্রিত করে একটি ফ্লেক্স আইটেমকে একটি পাত্রের উপরে বা নীচে সরান margin-bottom: auto৷
<div class="d-flex align-items-start flex-column bd-highlight mb-3" style="height: 200px;">
<div class="mb-auto p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
</div>
<div class="d-flex align-items-end flex-column bd-highlight mb-3" style="height: 200px;">
<div class="p-2 bd-highlight">Flex item</div>
<div class="p-2 bd-highlight">Flex item</div>
<div class="mt-auto p-2 bd-highlight">Flex item</div>
</div>
ফ্লেক্স কন্টেইনারে কীভাবে ফ্লেক্স আইটেম মোড়ানো হয় তা পরিবর্তন করুন। এর সাথে মোটেও মোড়ানো নয় (ব্রাউজার ডিফল্ট) থেকে বেছে নিন , এর .flex-nowrapসাথে মোড়ানো .flex-wrap, বা এর সাথে বিপরীত মোড়ক .flex-wrap-reverse।
<div class="d-flex flex-nowrap">
...
</div>
<div class="d-flex flex-wrap">
...
</div>
<div class="d-flex flex-wrap-reverse">
...
</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান flex-wrap।
.flex-nowrap.flex-wrap.flex-wrap-reverse.flex-sm-nowrap.flex-sm-wrap.flex-sm-wrap-reverse.flex-md-nowrap.flex-md-wrap.flex-md-wrap-reverse.flex-lg-nowrap.flex-lg-wrap.flex-lg-wrap-reverse.flex-xl-nowrap.flex-xl-wrap.flex-xl-wrap-reverse
মুষ্টিমেয় ইউটিলিটি সহ নির্দিষ্ট ফ্লেক্স আইটেমের ভিজ্যুয়াল অর্ডার পরিবর্তন করুন । orderআমরা শুধুমাত্র একটি আইটেম প্রথম বা শেষ করার জন্য বিকল্প প্রদান করি, সেইসাথে DOM অর্ডার ব্যবহার করার জন্য একটি রিসেট। orderযেকোনো পূর্ণসংখ্যার মান (যেমন, ) লাগে, যে কোনো 5অতিরিক্ত মান প্রয়োজনের জন্য কাস্টম CSS যোগ করুন।
<div class="d-flex flex-nowrap bd-highlight">
<div class="order-3 p-2 bd-highlight">First flex item</div>
<div class="order-2 p-2 bd-highlight">Second flex item</div>
<div class="order-1 p-2 bd-highlight">Third flex item</div>
</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান order।
.order-0.order-1.order-2.order-3.order-4.order-5.order-6.order-7.order-8.order-9.order-10.order-11.order-12.order-sm-0.order-sm-1.order-sm-2.order-sm-3.order-sm-4.order-sm-5.order-sm-6.order-sm-7.order-sm-8.order-sm-9.order-sm-10.order-sm-11.order-sm-12.order-md-0.order-md-1.order-md-2.order-md-3.order-md-4.order-md-5.order-md-6.order-md-7.order-md-8.order-md-9.order-md-10.order-md-11.order-md-12.order-lg-0.order-lg-1.order-lg-2.order-lg-3.order-lg-4.order-lg-5.order-lg-6.order-lg-7.order-lg-8.order-lg-9.order-lg-10.order-lg-11.order-lg-12.order-xl-0.order-xl-1.order-xl-2.order-xl-3.order-xl-4.order-xl-5.order-xl-6.order-xl-7.order-xl-8.order-xl-9.order-xl-10.order-xl-11.order-xl-12
ক্রস অক্ষে ফ্লেক্স আইটেমগুলিকে একত্রেalign-content সারিবদ্ধ করতে ফ্লেক্সবক্স পাত্রে ইউটিলিটিগুলি ব্যবহার করুন। (ব্রাউজার ডিফল্ট), , , , বা থেকে চয়ন করুন । এই ইউটিলিটিগুলি প্রদর্শন করার জন্য, আমরা ফ্লেক্স আইটেমগুলির সংখ্যা প্রয়োগ করেছি এবং বাড়িয়েছি।startendcenterbetweenaroundstretchflex-wrap: wrap
মাথা আপ! ফ্লেক্স আইটেমগুলির একক সারিগুলিতে এই সম্পত্তির কোন প্রভাব নেই।
<div class="d-flex align-content-start flex-wrap">
...
</div>
<div class="d-flex align-content-end flex-wrap">...</div>
<div class="d-flex align-content-center flex-wrap">...</div>
<div class="d-flex align-content-between flex-wrap">...</div>
<div class="d-flex align-content-around flex-wrap">...</div>
<div class="d-flex align-content-stretch flex-wrap">...</div>
এর জন্যও প্রতিক্রিয়াশীল বৈচিত্র বিদ্যমান align-content।
.align-content-start.align-content-end.align-content-center.align-content-around.align-content-stretch.align-content-sm-start.align-content-sm-end.align-content-sm-center.align-content-sm-around.align-content-sm-stretch.align-content-md-start.align-content-md-end.align-content-md-center.align-content-md-around.align-content-md-stretch.align-content-lg-start.align-content-lg-end.align-content-lg-center.align-content-lg-around.align-content-lg-stretch.align-content-xl-start.align-content-xl-end.align-content-xl-center.align-content-xl-around.align-content-xl-stretch