সিএসএস ফ্লেক্সবক্স গ্রিড জেনারেটর

Flexbox ও CSS Grid লেআউটের জন্য তাৎক্ষণিকভাবে পরিষ্কার, প্রোডাকশন-রেডি CSS তৈরি করুন। কন্টেইনারের বৈশিষ্ট্যগুলো দৃশ্যমান করুন, আইটেমের বিন্যাস প্রিভিউ করুন এবং আপনার ওয়েব প্রজেক্টের জন্য জেনারেট করা কোড কপি করুন। এটি সব ধরনের Flexbox ও Grid অ্যালাইনমেন্ট, স্পেসিং এবং ডিস্ট্রিবিউশন বৈশিষ্ট্য সমর্থন করে।

এই ক্যালকুলেটরটি কি আপনাকে সাহায্য করেছে?

সিএসএস ফ্লেক্সবক্স গ্রিড জেনারেটর কী?

এই টুলটি Flexbox ও CSS Grid লেআউটের জন্য প্রোডাকশন-রেডি CSS তৈরি করে, পরীক্ষামূলক স্টাইলিংয়ের ট্রায়াল-অ্যান্ড-এরর পর্যায় দূর করে। আপনার লেআউট মোড নির্বাচন করুন, স্বজ্ঞাত নিয়ন্ত্রণ ব্যবহার করে দিক, অ্যালাইনমেন্ট, র‍্যাপিং এবং স্পেসিংয়ের মতো বৈশিষ্ট্য সামঞ্জস্য করুন, এবং দেখুন আইটেমগুলো কীভাবে সাজানো হবে তার একটি লাইভ ভিজ্যুয়াল প্রিভিউ। জেনারেট করা CSS কোড রিয়েল-টাইমে আপডেট হয় এবং কোনো পরিবর্তন ছাড়াই সরাসরি আপনার স্টাইলশিটে কপি করা যায়। আপনি Flexbox দিয়ে একটি নেভিগেশন বার বা CSS Grid দিয়ে একটি রেসপনসিভ ইমেজ গ্যালারি তৈরি করছেন কিনা তা নির্বিশেষে, এই জেনারেটর প্রতিটি বৈশিষ্ট্য চূড়ান্ত লেআউটকে ঠিক কীভাবে প্রভাবিত করে তা দেখিয়ে ট্রায়াল-অ্যান্ড-এরর দূর করে। আধুনিক ওয়েব ডেভেলপমেন্টে (2025), CSS Grid ও Flexbox হলো সকল প্রধান CSS ফ্রেমওয়ার্কের ভিত্তি — Tailwind CSS, Bootstrap 5, Bulma এবং Foundation — এবং এই টুলের মাধ্যমে এগুলো আয়ত্ত করা আপনার ডেভেলপমেন্ট ওয়ার্কফ্লো দ্রুততর করে এবং পরিচ্ছন্ন, আরও রক্ষণযোগ্য কোডবেস তৈরি করে।

ধাপসমূহ:

  1. আপনার প্রজেক্টের মাত্রা বিবেচনা করে Flexbox (একমাত্রিক) বা CSS Grid (দ্বিমাত্রিক) লেআউট মোড নির্বাচন করুন: একক-অক্ষ লেআউটের জন্য (নেভিগেশন, কার্ড সারি) Flexbox এবং দ্বিমাত্রিক লেআউটের জন্য (পেজ স্ট্রাকচার, গ্যালারি) Grid।
  2. ভিজ্যুয়ালাইজ করার জন্য আইটেমের সংখ্যা নির্ধারণ করুন এবং তাদের মধ্যে ফাঁকের স্পেসিং সামঞ্জস্য করুন, মনে রাখবেন gap শুধু আইটেমগুলোর মধ্যে স্থান তৈরি করে, বাইরের প্রান্তে নয় — বাইরের স্পেসিংয়ের জন্য কন্টেইনার বা প্রথম/শেষ চাইল্ডে মার্জিন ব্যবহার করুন।
  3. Flexbox এর জন্য: flex-direction, justify-content, align-items এবং flex-wrap কনফিগার করুন। এই চারটি বৈশিষ্ট্য বেশিরভাগ Flexbox ব্যবহারের ক্ষেত্র নিয়ন্ত্রণ করে।
  4. Grid এর জন্য: নমনীয় ট্র্যাকের জন্য fr একক, প্যাটার্নের জন্য repeat(), এবং সুস্পষ্ট গ্রিড প্লেসমেন্টের জন্য লাইন নাম কাজে লাগিয়ে CSS মান ব্যবহার করে grid-template-columns এবং grid-template-rows নির্ধারণ করুন।
  5. রিয়েল-টাইমে লেআউট প্রিভিউ করুন এবং জেনারেট করা CSS আপনার প্রজেক্টে কপি করুন, 'Copy CSS' বাটন ব্যবহার করে যা বিস্তৃত ব্রাউজার সামঞ্জস্যতার জন্য প্রয়োজনমতো সঠিক ফরম্যাটিং ও ভেন্ডর প্রিফিক্স সহ কপি করে।

সূত্র

Flexbox আউটপুট: .container { display: flex; flex-direction: ; justify-content: ; align-items: ; flex-wrap: ; gap: ; } CSS Grid আউটপুট: .container { display: grid; grid-template-columns: ; grid-template-rows: ; gap: ; } জেনারেটরটি প্রতিটি নিয়ন্ত্রণকে সরাসরি এর সংশ্লিষ্ট CSS প্রপার্টির সাথে ম্যাপ করে — আপনার নির্বাচিত মানগুলি থেকে ডিক্লারেশন ব্লক একত্রিত করা ছাড়া অন্য কোনো গণনা জড়িত নেই।

ব্যবহারের ক্ষেত্র

  • ফ্রন্টএন্ড ডেভেলপাররা প্রোডাকশন CSS লেখার আগে দ্রুত লেআউট অপশন প্রোটোটাইপ করছেন, ধারণা থেকে বাস্তবায়নের সময় ঘণ্টা থেকে মিনিটে কমিয়ে আনছেন।
  • ডিজাইনাররা কোড এডিটর না খুলে CSS বৈশিষ্ট্যের সংমিশ্রণ ভিজ্যুয়ালাইজ করছেন, দ্রুততর ক্লায়েন্ট উপস্থাপনা এবং ডিজাইন পুনরাবৃত্তি সক্ষম করছেন।
  • শিক্ষার্থীরা ইন্টারঅ্যাক্টিভ পরীক্ষণের মাধ্যমে Flexbox ও Grid শিখছে, যেখানে তাৎক্ষণিক ভিজ্যুয়াল ফিডব্যাক স্ট্যাটিক ডকুমেন্টেশনের তুলনায় ধারণাগত বোঝাপড়া দ্রুততর করে।
  • টিমগুলো একটি ডিজাইন সিস্টেম জুড়ে লেআউট প্যাটার্ন মানসম্মত করছে, একাধিক প্রজেক্ট ও টিম সদস্য জুড়ে সামঞ্জস্যতা নিশ্চিত করছে এবং ডিজাইন-থেকে-ডেভেলপমেন্ট হস্তান্তরের ঘর্ষণ কমাচ্ছে।
  • ফুল-স্ট্যাক ডেভেলপাররা তাদের পছন্দের IDE না ছেড়েই দ্রুত কম্পোনেন্ট তৈরির জন্য পরিষ্কার লেআউট CSS তৈরি করছেন, বিশেষ করে হ্যাকাথন এবং দ্রুত প্রোটোটাইপিংয়ের জন্য উপযোগী।
  • ডিজাইন সিস্টেম নির্মাতারা একটি পণ্য স্যুট জুড়ে সামঞ্জস্যপূর্ণ CSS প্যাটার্ন ডকুমেন্ট ও নিষ্কাশন করছেন, অপ্রয়োজনীয় কোড এবং ভিজ্যুয়াল অসামঞ্জস্যতা কমাচ্ছেন।

প্রধান সুবিধাসমূহ

  • লাইভ ভিজ্যুয়াল প্রিভিউ আপনি বৈশিষ্ট্য পরিবর্তন করার সাথে সাথেই আপডেট হয়, তাৎক্ষণিক ফিডব্যাক প্রদান করে এবং বিমূর্ত CSS বৈশিষ্ট্যের সংমিশ্রণের অনুমান দূর করে।
  • কোনো ভেন্ডর প্রিফিক্স বা অতিরিক্ত কোড ছাড়াই পরিষ্কার, ন্যূনতম CSS আউটপুট, প্রয়োজনে পুরনো ব্রাউজারের জন্য ক্রমান্বয়ে উন্নত ফলব্যাক সহ আধুনিক CSS বৈশিষ্ট্য ব্যবহার করে।
  • একটি টুলেই সব প্রধান Flexbox ও Grid বৈশিষ্ট্য সমর্থন করে, একাধিক ক্যালকুলেটর বা রেফারেন্স উপকরণের মধ্যে টগল করার প্রয়োজন দূর করে।
  • জেনারেট করা কোড যেকোনো আধুনিক প্রজেক্টের জন্য কপি-পেস্ট প্রস্তুত, প্রমিত ফরম্যাটিং, অর্থবহ মন্তব্য এবং রক্ষণাবেক্ষণযোগ্যতা ক্ষতিগ্রস্তকারী কোনো ইনলাইন স্টাইল ছাড়াই।
  • CSS লেআউট ধারণা শেখা ও বোঝার একটি ইন্টারঅ্যাক্টিভ উপায়, যা এই টুলটিকে জুনিয়র ডেভেলপার এবং CSS Grid/Flexbox এ পরিবর্তনরত ডিজাইনারদের জন্য মূল্যবান করে তোলে।
  • ম্যানুয়াল CSS লেখা, ডিবাগিং এবং ভেন্ডর প্রিফিক্স ব্যবস্থাপনার তুলনায় উল্লেখযোগ্য সময় সাশ্রয় — অনুমান বলছে লেআউট-সম্পর্কিত ডেভেলপমেন্ট সময় 60-80% কমে যায়।

প্রো টিপস

  • একটি একক এলিমেন্ট দ্রুত কেন্দ্রীভূত করতে হলে justify-content: center এবং align-items: center দিয়ে শুরু করুন, তবে মনে রাখবেন উল্লম্ব কেন্দ্রীভবন দৃশ্যমান হতে কন্টেইনারের একটি নির্ধারিত উচ্চতা থাকতে হবে।
  • চাইল্ড এলিমেন্টে মার্জিনের বদলে gap ব্যবহার করুন — এটি শুধু আইটেমগুলোর মধ্যে স্থান তৈরি করে, কখনও বাইরের প্রান্তে নয়, যা CSS সহজ করে এবং প্রথম/শেষ আইটেমে অতিরিক্ত মার্জিনের সাধারণ বাগ এড়ায়।
  • রেসপনসিভ গ্রিডের জন্য, পরিচ্ছন্ন কোড, কম HTTP অনুরোধ এবং উন্নত রক্ষণাবেক্ষণযোগ্যতার জন্য মিডিয়া কোয়েরির চেয়ে repeat(auto-fill, minmax(250px, 1fr)) পছন্দ করুন, কারণ গ্রিড কন্টেইনার প্রস্থের পরিবর্তনে গতিশীলভাবে খাপ খায়।
  • কন্টেন্ট পরিবর্তিত হলে সামঞ্জস্যপূর্ণ কলাম উচ্চতা নিশ্চিত করতে align-items: stretch সহ Flex কন্টেইনারে min-height সেট করুন, কুখ্যাত 'সবচেয়ে ছোট কলাম' সমস্যা প্রতিরোধ করে।
  • আপনি যদি বহুভাষিক ওয়েবসাইট সমর্থন করেন তবে LTR ও RTL উভয় মোডে আপনার লেআউট পরীক্ষা করুন — Flexbox direction বৈশিষ্ট্য দিয়ে স্বয়ংক্রিয়ভাবে দিক পরিচালনা করে, কিন্তু Grid এর জন্য স্পষ্ট সারি/কলাম সামঞ্জস্য প্রয়োজন।
  • নমনীয়তা ও কাঠামোগত অখণ্ডতার ভারসাম্য বজায় রাখতে নমনীয় কলামের জন্য 1fr একক এবং বাধ্যতামূলক ন্যূনতম প্রস্থের জন্য (যেমন, সাইডবার, লোগো এলাকা) স্থির px মান ব্যবহার করুন।
  • মার্জিন-ভিত্তিক স্পেসিং পদ্ধতির বদলে 'gap' বৈশিষ্ট্যটি কাজে লাগান, কারণ gap শুধু আইটেমগুলোর মধ্যে স্থান তৈরি করে, কখনও বাইরের প্রান্তে নয়, যা রেসপনসিভ রিডিজাইন সহজ করে এবং 'প্রথম-চাইল্ড মার্জিন' রিসেট প্যাটার্ন এড়ায়।

সচরাচর জিজ্ঞাসিত প্রশ্ন

CSS Flexbox এবং CSS Grid এর মধ্যে পার্থক্য কী?
Flexbox একটি একমাত্রিক লেআউট সিস্টেম যা একটি একক সারি বা কলামে আইটেম সাজানোর জন্য ডিজাইন করা হয়েছে। এটি একটি দিকে আইটেমগুলোর মধ্যে স্থান বণ্টন এবং সেই অক্ষ বরাবর সারিবদ্ধ করতে দক্ষ। CSS Grid একটি দ্বিমাত্রিক সিস্টেম যা একইসাথে সারি ও কলাম উভয়ই নিয়ন্ত্রণ করে, যা পেজ-লেভেল লেআউট, জটিল ড্যাশবোর্ড এবং উভয় অক্ষের উপর নিখুঁত নিয়ন্ত্রণ প্রয়োজন এমন যেকোনো কিছুর জন্য আদর্শ।
কখন CSS Grid এর বদলে Flexbox ব্যবহার করা উচিত?
Flexbox ব্যবহার করুন: নেভিগেশন বার, কার্ড সারি, একক এলিমেন্ট কেন্দ্রীভূত করা, সমান-উচ্চতার কলাম এবং কম্পোনেন্ট-লেভেল লেআউটের জন্য। CSS Grid ব্যবহার করুন: পেজ লেআউট, ভিন্ন আকারের ইমেজ গ্যালারি, ম্যাগাজিন-স্টাইল গ্রিড, ড্যাশবোর্ড প্যানেল এবং সারি ও কলাম উভয়ের নিখুঁত সারিবদ্ধতা প্রয়োজন এমন যেকোনো লেআউটের জন্য। অনেক আধুনিক সাইট পেজ স্ট্রাকচারের জন্য Grid এবং কম্পোনেন্ট-অভ্যন্তরের জন্য Flexbox ব্যবহার করে।
Flexbox এ justify-content কী করে?
justify-content মূল অক্ষ বরাবর আইটেমগুলো বণ্টন করে (সারিতে অনুভূমিক, কলামে উল্লম্ব)। 'space-between' প্রথম ও শেষ আইটেমকে সমান ফাঁক রেখে প্রান্তে রাখে। 'center' মাঝখানে জড়ো করে। 'space-evenly' প্রথম আইটেমের আগে এবং শেষ আইটেমের পরে সহ সব জায়গায় সমান ফাঁক তৈরি করে। রেসপনসিভ লেআউটের জন্য এই বৈশিষ্ট্য বোঝা অপরিহার্য।
CSS gap বৈশিষ্ট্য কী এবং এটি কীভাবে কাজ করে?
gap বৈশিষ্ট্যটি একটি Flexbox বা Grid কন্টেইনারে আইটেমগুলোর মধ্যে স্পেসিং নির্ধারণ করে। মার্জিন-ভিত্তিক পদ্ধতির বিপরীতে, gap শুধু আইটেমগুলোর মাঝে স্থান তৈরি করে, বাইরের প্রান্তে নয়। প্রথম/শেষ চাইল্ড থেকে অতিরিক্ত মার্জিন সরানোর চিন্তা না করে পরিষ্কার, একরূপ স্পেসিংয়ের জন্য gap ব্যবহার করুন। মান হতে পারে px, rem, em বা যেকোনো CSS দৈর্ঘ্য একক।
Flexbox দিয়ে একটি এলিমেন্ট কীভাবে কেন্দ্রীভূত করব?
একটি এলিমেন্ট কেন্দ্রীভূত করার সবচেয়ে সহজ উপায়: display: flex; justify-content: center; align-items: center। এটি এলিমেন্টটিকে তার কন্টেইনারের ভেতরে অনুভূমিক ও উল্লম্ব উভয়ভাবে কেন্দ্রীভূত করে। উল্লম্ব কেন্দ্রীভবন দৃশ্যমান হওয়ার জন্য কন্টেইনারের একটি নির্ধারিত উচ্চতা থাকতে হবে। এই কৌশলটি প্রকৃত 2D কেন্দ্রীভবনের জন্য পুরনো 'margin: auto' এবং 'text-align: center' হ্যাক প্রতিস্থাপন করেছে।
CSS Grid টেমপ্লেট কলাম কী?
grid-template-columns একটি Grid কন্টেইনারের কলাম কাঠামো নির্ধারণ করে। 'repeat(3, 1fr)' 3টি সমান-প্রস্থের কলাম তৈরি করে। '200px 1fr 1fr' একটি স্থির-প্রস্থের সাইডবার এবং দুটি নমনীয় কন্টেন্ট এলাকা তৈরি করে। 'repeat(auto-fill, minmax(250px, 1fr))' একটি রেসপনসিভ গ্রিড তৈরি করে যা উপলব্ধ স্থানের ভিত্তিতে স্বয়ংক্রিয়ভাবে কলামের সংখ্যা সামঞ্জস্য করে — কোনো মিডিয়া কোয়েরি ছাড়াই।
আমি কি একই লেআউটে Flexbox এবং Grid একসাথে ব্যবহার করতে পারি?
হ্যাঁ — এবং এটি একটি সুপারিশকৃত সর্বোত্তম অনুশীলন। বাইরের পেজ স্ট্রাকচারের জন্য (হেডার, সাইডবার, মূল অংশ, ফুটার) CSS Grid এবং সেই সেকশনগুলোর ভেতরের পৃথক কম্পোনেন্টের জন্য (নেভিগেশন আইটেম, কার্ড কন্টেন্ট, ফর্ম লেআউট) Flexbox ব্যবহার করুন। Grid ম্যাক্রো লেআউট নিয়ন্ত্রণ করে, Flexbox মাইক্রো লেআউট পরিচালনা করে। এই সমন্বয় আপনাকে উভয় সিস্টেমের সেরাটা দেয়।
CSS Grid এ 1fr একক কী?
fr মানে 'ফ্র্যাকশনাল ইউনিট'। এটি Grid কন্টেইনারে উপলব্ধ মুক্ত স্থানের একটি অংশ নির্দেশ করে। 'repeat(3, 1fr)' কন্টেইনারকে ৩টি সমান অংশে ভাগ করে। '1fr 2fr' দ্বিতীয় কলামকে প্রথমটির দ্বিগুণ প্রস্থ দেয়। স্থির-আকারের ট্র্যাক (px, em) হিসাব করার পর fr একক স্বয়ংক্রিয়ভাবে অবশিষ্ট স্থান বণ্টন করে।
সব ব্রাউজারে কি CSS Grid সমর্থিত?
সব আধুনিক ব্রাউজারে CSS Grid সম্পূর্ণভাবে সমর্থিত: Chrome 57+, Firefox 52+, Safari 10.1+ এবং Edge 16+। Can I Use অনুযায়ী, 2025 সাল থেকে Grid এর বিশ্বব্যাপী ব্রাউজার সমর্থন 98%+। একমাত্র ব্যতিক্রম Internet Explorer, যার আংশিক, পুরনো সমর্থন রয়েছে। আধুনিক ওয়েব ডেভেলপমেন্টের জন্য, CSS Grid ফলব্যাক ছাড়াই প্রোডাকশন-রেডি।
মিডিয়া কোয়েরি ছাড়া আমি কীভাবে একটি CSS Grid রেসপনসিভ বানাব?
minmax() এর সাথে auto-fill বা auto-fit কীওয়ার্ড ব্যবহার করুন: grid-template-columns: repeat(auto-fill, minmax(250px, 1fr))। এটি একটি গ্রিড তৈরি করে যা উপলব্ধ কন্টেইনার প্রস্থের ভিত্তিতে স্বয়ংক্রিয়ভাবে কলাম যোগ বা বাদ দেয়। প্রতিটি কলাম কমপক্ষে 250px হবে এবং অবশিষ্ট স্থান পূরণ করতে প্রসারিত হবে। Auto-fit ফাঁকা ট্র্যাক পূরণ করতে আইটেম প্রসারিত করে; auto-fill সেগুলো সংরক্ষণ করে।

আরও টুল আবিষ্কার করুন

আমাদের পুরো টুল লাইব্রেরি থেকে নতুন নির্বাচন।