🌐 Detecting your location…
📢 Advertisement — Configure AdSense in Appearance → Customize → AdSense Settings

CSS ফ্লেক্সবক্স সম্পূর্ণ গাইড 2026: লেআউট, প্যাটার্ন এবং বাস্তব উদাহরণ

⏱️2 min read  ·  434 words

CSS ফ্লেক্সবক্স এখনও 2026 সালে UI উপাদানগুলির জন্য সবচেয়ে গুরুত্বপূর্ণ লেআউট টুল। যখন CSS গ্রিড দ্বি-মাত্রিক লেআউটগুলি পরিচালনা করে, ফ্লেক্সবক্স এক-মাত্রিক প্রান্তিককরণ, প্রতিক্রিয়াশীল নেভিগেশন বার, কার্ড লেআউট এবং কেন্দ্রীভূত উপাদানগুলিতে দুর্দান্ত। এই সম্পূর্ণ নির্দেশিকা চাক্ষুষ উদাহরণ সহ প্রতিটি সম্পত্তি কভার.

ফ্লেক্স কন্টেইনার বৈশিষ্ট্য

.container {
  display: flex;          /* or inline-flex */
  flex-direction: row;    /* row | row-reverse | column | column-reverse */
  flex-wrap: nowrap;      /* nowrap | wrap | wrap-reverse */
  flex-flow: row nowrap;  /* shorthand: flex-direction + flex-wrap */

  /* Main axis alignment (row = horizontal, column = vertical) */
  justify-content: flex-start;   /* flex-start | flex-end | center | space-between | space-around | space-evenly */

  /* Cross axis alignment */
  align-items: stretch;          /* stretch | flex-start | flex-end | center | baseline */

  /* Multi-line cross axis alignment (only when flex-wrap: wrap) */
  align-content: normal;         /* normal | flex-start | flex-end | center | space-between | space-around | space-evenly | stretch */

  /* Gap between items */
  gap: 16px;             /* gap: row-gap col-gap */
  row-gap: 16px;
  column-gap: 24px;
}

ফ্লেক্স আইটেম বৈশিষ্ট্য

.item {
  /* flex-grow: how much to grow (0 = don't grow) */
  flex-grow: 1;          /* 0 = don't grow, 1 = grow proportionally */

  /* flex-shrink: how much to shrink (1 = shrink proportionally) */
  flex-shrink: 0;        /* 0 = don't shrink */

  /* flex-basis: initial size before growing/shrinking */
  flex-basis: 200px;     /* auto | 0 | 200px | 25% */

  /* Shorthand: grow shrink basis */
  flex: 1 1 auto;        /* flex: 1 (common) | flex: 0 0 200px | flex: auto */

  /* Self alignment (overrides align-items for this item) */
  align-self: center;    /* auto | stretch | flex-start | flex-end | center | baseline */

  /* Order: visual order (default: 0) */
  order: -1;             /* appears before order:0 items */
}

সাধারণ ফ্লেক্সবক্স প্যাটার্নস

পারফেক্ট সেন্টারিং

/* Center anything horizontally and vertically */
.center-container {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
}

/* Or use margin: auto on the child (works when parent is flex) */
.centered-item {
  margin: auto;
}

নেভিগেশন বার

<nav class="navbar">
  <a href="/" class="logo">TechPulse</a>
  <ul class="nav-links">
    <li><a href="/blog">Blog</a></li>
    <li><a href="/about">About</a></li>
  </ul>
  <a href="/contact" class="cta">Get Started</a>
</nav>

.navbar {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0 24px;
  height: 64px;
}

.logo { font-weight: bold; }

.nav-links {
  display: flex;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 1;              /* push CTA to right */
  justify-content: center;
}

.cta { margin-left: auto; }  /* or use flex: 1 on nav-links

সমান উচ্চতা সহ কার্ড লেআউট

.card-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.card {
  display: flex;
  flex-direction: column;
  flex: 1 1 300px;     /* grow, shrink, min-basis 300px */
  max-width: 400px;
  background: white;
  border-radius: 12px;
  padding: 24px;
}

.card-content {
  flex: 1;             /* grows to fill space, pushes button to bottom */
}

.card-button {
  margin-top: 16px;    /* always at bottom regardless of content height */
}

স্টিকি ফুটার

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  flex: 1;             /* grows to fill remaining space, pushing footer down */
}

footer {
  /* Always at bottom */
}

হলি গ্রেইল লেআউট

.layout {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.layout-header,
.layout-footer { flex: none; }

.layout-body {
  display: flex;
  flex: 1;
}

.layout-sidebar { width: 250px; flex: none; }
.layout-main    { flex: 1; }        /* fills remaining space */
.layout-aside   { width: 200px; flex: none; }

ফ্লেক্স-র্যাপ সহ প্রতিক্রিয়াশীল লেআউট

/* Items stack vertically on mobile, go horizontal on desktop */
.responsive-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.responsive-item {
  flex: 1 1 250px;     /* min-width 250px, grows to fill */
}

/* Force break: half-width items */
.half-width {
  flex: 1 1 calc(50% - 16px);
  max-width: calc(50% - 16px);
}

/* Full-width override */
.full-width {
  flex-basis: 100%;
}

ফ্লেক্সবক্স বনাম গ্রিড: কখন প্রতিটি ব্যবহার করবেন

দৃশ্যকল্প ফ্লেক্সবক্স ব্যবহার করুন গ্রিড ব্যবহার করুন
নেভিগেশন বার
একটি সারিতে কার্ড তালিকা
জটিল 2D বিন্যাস
একটি উপাদান কেন্দ্র
ফর্ম লেআউট ✅ (সরল) ✅ (জটিল)
পৃষ্ঠা বিন্যাস (শিরোনাম/প্রধান/পাদলেখ)
আইটেম স্বয়ংক্রিয় বসানো

যেকোন ওয়েব ডেভেলপারের জন্য ফ্লেক্সবক্স আয়ত্ত অপরিহার্য। এর সমন্বয়flex: 1ক্রমবর্ধমান আইটেম জন্য,gapব্যবধানের জন্য,align-itemsক্রস-অক্ষ প্রান্তিককরণের জন্য, এবংflex-wrap: wrapপ্রতিক্রিয়াশীল লেআউটের জন্য বাস্তব-বিশ্ব ব্যবহারের ক্ষেত্রে 90% কভার করে।

✍️ Leave a Comment

Your email address will not be published. Required fields are marked *

🌐 Read in:🇬🇧 English🇩🇪 Deutsch🇧🇷 Português🇸🇦 العربية🇮🇳 हिन्दी🇧🇩 বাংলা