Alpha Value কী? CSS-এ Color Transparency বোঝার সম্পূর্ণ গাইড
RGBA, HEX 8-digit, opacity — CSS-এ color transparency কীভাবে কাজ করে, কখন কোনটা ব্যবহার করবেন, এবং কীভাবে সঠিক alpha value বাছবেন।
ওয়েব ডিজাইন করার সময় একটা ছোট্ট জিনিস কিন্তু বার বার সামনে আসে color এর transparency কখনো একটা card-এর background সাদা চান কিন্তু একটু ফিকে, কখনো একটা button-এর border রঙিন চান কিন্তু সম্পূর্ণ solid না আবার কখনো একটা overlay বানাতে চান যাতে নিচের ছবি একটু দেখা যায়। এই সব ক্ষেত্রে যে জিনিসটা আমরা control করছি সেটা হলো alpha value।
আজকের এই পোস্টে আমরা শিখব:
- Alpha value আসলে কী
- হেক্স কোডে শেষের দুটো অক্ষর কী কাজ করে
- কোন value কখন ব্যবহার করতে হবে
- বাস্তব design-এ কীভাবে apply করবেন
Alpha value আসলে কী?
ধরুন আপনার হাতে একটা লাল রঙের কাচের টুকরো আছে। যদি সেটা পুরোপুরি অস্বচ্ছ (opaque) হয়, তাহলে এর পিছনে কিছুই দেখতে পাবেন না। আর যদি স্বচ্ছ (transparent) হয়, তাহলে পিছনের সবকিছু পরিষ্কার দেখবেন। কিন্তু এর মাঝামাঝি কিছু হলে (মানে একটু transparent) পিছনের জিনিস একটু ফিকে দেখা যাবে।
CSS-এ alpha value এই স্বচ্ছতার মাত্রাটাই control করে, মানে হলো:
- Alpha = 0 → সম্পূর্ণ transparent (অদৃশ্য)
- Alpha = 0.5 → অর্ধেক transparent (ফিকে)
- Alpha = 1 → সম্পূর্ণ opaque (গাঢ়, পিছনের কিছু দেখা যায় না)
CSS-এ alpha লেখার তিন পদ্ধতি
CSS-এ transparency add করার তিনটা প্রধান উপায় আছে তা নিচে দেওয়া হলো।
১. rgba() — এর পরিচিতি
.card {
background: rgba(59, 130, 246, 0.18);
}এখানে:
- 59, 130, 246 → red, green, blue value (0-255 এর মধ্যে)
- 0.18 → alpha value (0 থেকে 1 এর মধ্যে decimal)
সুবিধা: পড়তে সহজ, alpha value পরিষ্কার দেখা যায়। অসুবিধা: লম্বা, একটু পুরোনো syntax।
২. 8-digit Hex — আধুনিক ও কমপ্যাক্ট
.card {
background: #3b82f62e;
}এখানে:
- #3b82f6 → সাধারণ হেক্স কালার (red, green, blue)
- 2E → শেষের দুটো অক্ষর হলো alpha value
সুবিধা: ছোট, modern, design tool থেকে copy করা সহজ (Figma, Sketch সব এটা support করে)। অসুবিধা: প্রথমে confusing লাগে, alpha হেক্সে মনে রাখতে হয়।
৩. CSS opacity property পুরো element-এর জন্য
.card {
background: #3b82f6;
opacity: 0.18;
}সুবিধা: সহজ, percentage হিসেবে ভাবা যায়। অসুবিধা: পুরো element transparent হয়ে যায় — শুধু background না, ভিতরের text-ও fade হয়ে যায় আর এটাই বড় limitation.
কখন কোনটা ব্যবহার করবেন?
| পরিস্থিতি | যেটা ব্যবহার করুন |
|---|---|
| শুধু background বা border-এর transparency দরকার | rgba() বা hex 8-digit |
| পুরো element ফিকে দেখাতে চান (image সহ) | opacity property |
| Modern code, ছোট size চান | hex 8-digit |
| Code পরিষ্কার পড়তে চান | rgba() |
| Design file থেকে copy-paste করছেন | hex 8-digit (Figma এর default) |
Alpha value-এর reference table
8-digit hex format-এ alpha হলো শেষের দুটো অক্ষর (00 থেকে FF পর্যন্ত)। নিচের টেবিল-এ সবচেয়ে useful value-গুলো এক জায়গায়।
| Hex Alpha | আনুমানিক Opacity | Decimal | কখন ব্যবহার করবেন |
|---|---|---|---|
00 | 0% | 0.0 | সম্পূর্ণ invisible (gradient-এর শুরু/শেষে) |
0D | 5% | 0.05 | অতি সূক্ষ্ম tint, প্রায় অদৃশ্য |
1A | 10% | 0.10 | খুব subtle background |
26 | 15% | 0.15 | নরম accent |
2E | 18% | 0.18 | default soft tint (বেশি ব্যবহৃত) |
33 | 20% | 0.20 | একটু stronger accent |
40 | 25% | 0.25 | hover state, lighter overlay |
4D | 30% | 0.30 | লক্ষণীয় accent |
66 | 40% | 0.40 | মাঝারি transparency |
80 | 50% | 0.50 | অর্ধেক transparent |
99 | 60% | 0.60 | লক্ষণীয়ভাবে গাঢ় |
B3 | 70% | 0.70 | বেশিরভাগ visible |
CC | 80% | 0.80 | প্রায় solid |
E6 | 90% | 0.90 | প্রায় opaque |
FF | 100% | 1.0 | সম্পূর্ণ solid, transparent না |
বাস্তব ব্যবহার — কোথায় কোন value ব্যবহার করবেন
প্রতিটা alpha range-এর একটা specific design purpose আছে। নিচে দেখুন কখন কোনটা reach করবেন।
Subtle background tints (10% - 20%)
Card, badge, soft accent — যেখানে একটা রঙের ইঙ্গিত দিতে চান কিন্তু overwhelming করতে চান না।
.badge-success {
background: #10b9812e; /* emerald, 18% — soft and gentle */
color: #047857;
}
.warning-card {
background: #f59e0b1a; /* amber, 10% — barely there */
}এই range-টা সবচেয়ে বেশি ব্যবহৃত হয় — almost all modern UI design এখানেই থাকে।
Borders ও separator (15% - 30%)
Border-গুলো একদম invisible হলে চলবে না, আবার সম্পূর্ণ solid হলে কড়া লাগবে।
.card {
border: 1px solid #3b82f633; /* blue border, 20% — visible but soft */
}
.divider {
background: #00000026; /* black, 15% — subtle separator */
}Hover states (20% - 40%)
Default state থেকে hover state একটু stronger হওয়া উচিত — user-কে clear feedback দিতে।
.button {
background: #3b82f62e; /* 18% default */
transition: background 0.2s;
}
.button:hover {
background: #3b82f64d; /* 30% on hover */
}Overlay ও backdrop (40% - 80%)
Modal-এর পিছনে যে darken effect থাকে, image-এর উপরে যে text-readable gradient থাকে — এসব।
.modal-backdrop {
background: #00000080; /* black, 50% — dims background */
}
.hero-text-overlay {
background: linear-gradient(
to bottom,
#00000000 0%,
/* transparent top */ #000000b3 100% /* 70% black bottom */
);
}Glassmorphism (frosted glass effect) (60% - 80%)
আধুনিক design trend — কাচের মতো effect বানাতে।
.glass-card {
background: #ffffffcc; /* white, 80% */
backdrop-filter: blur(20px);
border: 1px solid #ffffff4d; /* white border, 30% */
}একটা subtle কিন্তু গুরুত্বপূর্ণ বিষয়
Hex alpha case-sensitive না মানে 2E আর 2e দুটোই একই কাজ করে।
/* এই দুটো একই */
.a {
background: #3b82f62e;
}
.b {
background: #3b82f62e;
}তবে consistency-র জন্য একই style সারাজীবন follow করুন — হয় সব uppercase, না হয় সব lowercase।
Color contrast-এর সতর্কতা
Transparency ব্যবহার করার সময় accessibility এর কথা মাথায় রাখুন Text-এর alpha খুব কম হলে পড়া যাবে না।
Text-এর জন্য safe minimum value:
- Body text: কমপক্ষে D9 (85%) — পড়া সহজ
- Secondary text: কমপক্ষে 99 (60%) — মূল content-এর পাশে
- Disabled/placeholder: 66 (40%) — clearly inactive বোঝায়
একটা design system-এ alpha কীভাবে organize করবেন
প্রজেক্টে inconsistency এড়াতে একটা reusable alpha scale বানানো সবচেয়ে ভালো মাধ্যম। নিচের উদাহরণটি দেখুন এবং এই নিয়ম follow করলে ৯০% project-এ scale এর জন্য যথেষ্ট।
:root {
/* Alpha scale */
--alpha-faint: 0.05; /* 0D — barely visible */
--alpha-subtle: 0.1; /* 1A — soft hint */
--alpha-soft: 0.18; /* 2E — default tint */
--alpha-medium: 0.3; /* 4D — noticeable */
--alpha-strong: 0.6; /* 99 — prominent */
--alpha-heavy: 0.85; /* D9 — near solid */
}তারপর component-এ ব্যবহার করুন:
.card-tint {
background: rgb(59 130 246 / var(--alpha-soft));
}এতে design system consistent থাকে এবং পরে কোনো adjustment লাগলে এক জায়গায় change করলেই সব update হয়।
যে ভুলগুলো বেশিরভাগ developer করে
১. সব জায়গায় random alpha
কেউ 0.15, কেউ 0.16, কেউ 0.18 — সব design মিলে chaos। সবসময় predefined scale থেকে নিন।
২. শুধু opacity দিয়ে background transparent করা।
/* ❌ ভুল */
.card {
background: #3b82f6;
opacity: 0.2; /* text-ও fade হয়ে যাবে! */
}
/* ✅ সঠিক */
.card {
background: #3b82f633; /* শুধু background fade */
}৩. Dark mode-এ একই alpha
Light mode-এ 2E (18%) ভালো লাগে, কিন্তু dark mode-এ সেটা invisible হয়ে যেতে পারে। Dark mode-এ alpha একটু বাড়ান (33 বা 40)।
.card {
background: #3b82f62e;
}
@media (prefers-color-scheme: dark) {
.card {
background: #3b82f64d; /* darker mode-এ stronger */
}
}সংক্ষেপে
- Alpha = কতটা স্বচ্ছ — 0 থেকে 1 (decimal) বা 00 থেকে FF (hex)
- 2E (~18%) = সবচেয়ে বেশি ব্যবহৃত soft tint
- 80 (~50%) = অর্ধেক transparent, overlay-র জন্য আদর্শ
- opacity property শুধু পুরো element fade করার জন্য, background fade-এর জন্য না
- Body text alpha কখনো ৮৫%-এর নিচে না
- Design system-এ predefined alpha scale ব্যবহার করুন
Alpha value মাত্রার ব্যাপার, রঙের ব্যাপার না। সঠিকভাবে ব্যবহার করলে design-এ depth, softness, এবং hierarchy তৈরি হয়। একই color পরপর তিনটা alpha-তে use করলেই একটা elegant layered effect পাওয়া যায়।
পরের বার যখন CSS-এ rgba(...) লিখবেন, একবার ভাবুন — এটা hex 8-digit-এ লিখলে ছোট হতো কিনা। আর alpha value চয়ন করার সময় random না বেছে সঠিক গাইডের scale follow করুন। এই ছোট ছোট পরিবর্তনগুলো আপনার design কে ধীরে ধীরে আরও professional দেখাতে শুরু করবে।
Written by
Ahshan Habib
Full-stack developer. লেখেন TypeScript, CSS, এবং web design নিয়ে।
@AhshanHabibKeep reading
OKLCH Color কী? RGB ও HSL ছেড়ে কেন এই নতুন color format ব্যবহার করবেন
OKLCH হলো CSS-এর সবচেয়ে আধুনিক color format। কেন Tailwind v4, Radix, এবং modern design system এটা ব্যবহার করছে — সব বুঝবেন এই গাইডে।
Dark Mode Strategy ২০২৬ — Modern Web App এ Theming এর সম্পূর্ণ গাইড
FOUC এড়িয়ে, system preference detect করে, এবং performance বজায় রেখে কীভাবে production-grade dark mode বানাবেন — Next.js, Tailwind v4, CSS variables দিয়ে।