কম্পিউটার টিউটোরিয়াল

CSS দিয়ে ড্রপ শ্যাডো ইফেক্ট সেট করা

ওভারভিউ

Drop Shadow ইফেক্ট একটি এলিমেন্টের আকার অনুযায়ী ছায়া (Shadow) তৈরি করে, নির্দিষ্ট X (হরিজন্টাল) এবং Y (ভার্টিক্যাল) অফসেট ও রঙে। লিগ্যাসি IE-এ filter: DropShadow() ব্যবহার হত, আধুনিক CSS-এ box-shadow (বক্সের জন্য) এবং filter: drop-shadow() (অন 규칙 আকার/টেক্সট/ইমেজের জন্য) ব্যবহার করা হয়।

লিগ্যাসি প্যারামিটার (IE Only)

প্যারামিটারবিবরণ
Colorছায়ার রঙ (#RRGGBB ফরম্যাটে)
OffXহরিজন্টাল অফসেট (পিক্সেলে)। পজিটিভ = ডান, নেগেটিভ = বাম।
OffYভার্টিক্যাল অফসেট (পিক্সেলে)। পজিটিভ = নিচে, নেগেটিভ = উপরে।
Positive1 = অপেক পিক্সেলে শ্যাডো, 0 = ট্রান্সপারেন্ট পিক্সেলে শ্যাডো। ডিফল্ট: 1。

লিগ্যাসি উদাহরণ (IE Only)

<html>
<head></head>
<body>
    <img src="/css/images/logo.png" alt="CSS Logo" 
        style="filter: Chroma(Color=#000000) DropShadow(Color=#FF0000, OffX=2, OffY=2, Positive=1)">
    <p>Text Example:</p>
    <div style="width: 357px; height: 50px; font-size: 30pt; font-family: Arial Black; color: red; 
        filter: DropShadow(Color=#000000, OffX=2, OffY=2, Positive=1)">
        CSS Tutorials
    </div>
</body>
</html>

আধুনিক CSS পদ্ধতি (সর্ব ব্রাউজার)

১. Box Shadow (বক্স-মডেল এলিমেন্টের জন্য - div, button, card ইত্যাদি)

.box-shadow {
    /* offset-x | offset-y | blur-radius | spread-radius | color */
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.5);
    
    /* একাধিক শ্যাডো */
    box-shadow: 
        2px 2px 4px rgba(0,0,0,0.3),
        -2px -2px 4px rgba(255,255,255,0.2); /* Neumorphism */
}

২. Filter: drop-shadow() (অনियमিত আকার, PNG ট্রান্সপারেন্সি, টেক্সট, SVG)

.drop-shadow {
    /* offset-x | offset-y | blur-radius | color */
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5));
    
    /* একাধিক ড্রপ-শ্যাডো */
    filter: 
        drop-shadow(2px 2px 4px rgba(0,0,0,0.3))
        drop-shadow(-2px -2px 4px rgba(255,255,255,0.2));
}

৩. Text Shadow (শুধু টেক্সটের জন্য)

.text-shadow {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

পূর্ণ উদাহরণ (আধুনিক)

<!DOCTYPE html>
<html>
<head>
<style>
    .demo-container { padding: 30px; font-family: sans-serif; }
    
    /* Box Shadow Examples */
    .box {
        width: 200px; height: 100px; background: #fff; 
        margin: 20px; display: inline-block; border-radius: 8px;
    }
    .box-1 { box-shadow: 2px 2px 8px rgba(0,0,0,0.2); }
    .box-2 { box-shadow: 0 4px 16px rgba(0,0,0,0.15); } /* Material Design elevation */
    .box-3 { box-shadow: inset 2px 2px 4px rgba(0,0,0,0.2); } /* Inner shadow */
    
    /* Drop Shadow (for transparent PNG) */
    .icon-shadow {
        filter: drop-shadow(4px 4px 8px rgba(0,0,0,0.3));
        transition: filter 0.3s;
    }
    .icon-shadow:hover { filter: drop-shadow(8px 8px 16px rgba(0,0,0,0.4)); }
    
    /* Text Shadow */
    .text-shadow { 
        font-size: 32px; font-weight: bold; color: #333;
        text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
    }
</style>
</head>
<body>
<div class="demo-container">
    <h2>Box Shadow (Rectangular Elements)</h2>
    <div class="box box-1">Basic Shadow</div>
    <div class="box box-2">Material Elevation</div>
    <div class="box box-3">Inner Shadow</div>
    
    <h2>Drop Shadow (Transparent PNG/SVG)</h2>
    <img src="icon.png" alt="Icon" class="icon-shadow" width="100">
    
    <h2>Text Shadow</h2>
    <div class="text-shadow">CSS Tutorials</div>
</div>
</body>
</html>

Box Shadow vs Drop Shadow - পার্থক্য

বৈশিষ্ট্যbox-shadowfilter: drop-shadow()
আকার অনুসরণনা (বক্স আকারে)হ্যাঁ (পিক্সেল আলফা অনুসরণ)
PNG ট্রান্সপারেন্সিবক্সে শ্যাডোআসল আকারে শ্যাডো
পারফরম্যান্সদ্রুত (কম্পোজিটর)धीম (ফিল্টার পাস)
বর্ডার রেডিাসঅনুসরণ করেআকার অনুসরণ করে
ক্লিপ পাথনাহ্যাঁ

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

  • box-shadow: কার্ড, বাটন, মডাল, ন্যাভবার, ইনপুট ফিল্ড (রেক্ট্যাঙ্গুলার এলিমেন্ট)
  • drop-shadow(): আইকন (SVG/PNG), কাট-আউট শেপ, টেক্সট, জটিল আকার
  • text-shadow: শুধু টেক্সটের জন্য (বेहतर পারফরম্যান্স)

সতর্কতা

  • লিগ্যাসি filter: DropShadow() শুধু IE 4-9-এ কাজ করে।
  • drop-shadow() ব্রাউজার রিপেইন্ট ট্রিগার করে - অতিরিক্ত ব্যবহার এড়ান।
  • box-shadow লেআউট স্পেস নেয় না, drop-shadow() ও নেয় না।
  1. CSS-এ রোল ইন অ্যানিমেশন ইফেক্ট

  2. CSS দিয়ে শ্যাডোতে ব্লার ইফেক্ট যোগ করা

  3. CSS দিয়ে হোভার ইফেক্টের গতি সেট করুন

  4. CSS শ্যাডো ইফেক্ট