Bird
Raised Fist0
Tailwindmarkup~5 mins

Drop shadow on irregular shapes in Tailwind

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Introduction

Drop shadows add depth and make shapes stand out. They help users see elements clearly, even if the shape is not a simple square or circle.

You want to highlight a button with a unique shape on your webpage.
You have an image with a custom shape and want a shadow that follows its outline.
You want to create a card with a fancy border and a shadow that matches the shape.
You want to improve the look of icons or logos that are not simple shapes.
You want to add a subtle shadow effect to irregular shapes for better visual appeal.
Syntax
Tailwind
<div class="shadow-[drop-shadow(4px_4px_6px_rgba(0,0,0,0.4))]">Your content</div>

Use shadow-[drop-shadow(...)] to apply custom drop shadows in Tailwind.

Inside the parentheses, write the CSS drop-shadow values: offset-x, offset-y, blur-radius, and color.

Examples
A blue circle with a soft drop shadow offset by 5 pixels right and down.
Tailwind
<div class="shadow-[drop-shadow(5px_5px_5px_rgba(0,0,0,0.5))] rounded-full bg-blue-400 w-24 h-24"></div>
A diamond shape with a subtle drop shadow using a polygon clip path.
Tailwind
<div class="shadow-[drop-shadow(3px_3px_4px_rgba(0,0,0,0.3))] bg-pink-300 w-32 h-20 clip-path-[polygon(50%_0%,_100%_50%,_50%_100%,_0%_50%)]"></div>
An irregular rounded shape with a dark drop shadow.
Tailwind
<div class="shadow-[drop-shadow(2px_2px_3px_rgba(0,0,0,0.6))] bg-green-500 w-40 h-24 rounded-[30%_70%_70%_30%_/_30%_30%_70%_70%]"></div>
Sample Program

This page shows three shapes with drop shadows using Tailwind's custom shadow syntax. The first is a circle, the second is a diamond shape using a polygon clip path, and the third is an irregular polygon shape. Each shape has a shadow that follows its outline, making them stand out on the light background.

Tailwind
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>Drop Shadow on Irregular Shapes</title>
  <script src="https://cdn.tailwindcss.com"></script>
  <style>
    .clip-diamond {
      clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    }
    .clip-irregular {
      clip-path: polygon(30% 0%, 70% 10%, 90% 50%, 70% 90%, 30% 100%, 10% 50%);
    }
  </style>
</head>
<body class="flex flex-col items-center justify-center min-h-screen gap-12 bg-gray-100 p-6">
  <h1 class="text-2xl font-semibold mb-4">Drop Shadow on Irregular Shapes</h1>

  <div class="shadow-[drop-shadow(6px_6px_8px_rgba(0,0,0,0.4))] bg-purple-500 w-32 h-32 rounded-full"></div>

  <div class="shadow-[drop-shadow(4px_4px_6px_rgba(0,0,0,0.35))] bg-pink-400 w-40 h-40 clip-diamond"></div>

  <div class="shadow-[drop-shadow(5px_5px_7px_rgba(0,0,0,0.5))] bg-green-600 w-48 h-48 clip-irregular"></div>

</body>
</html>
OutputSuccess
Important Notes

Use clip-path CSS to create irregular shapes that shadows can follow.

Tailwind's shadow-[drop-shadow(...)] allows custom shadows beyond the default presets.

Test shadows on different backgrounds to ensure good contrast and visibility.

Summary

Drop shadows add depth and help shapes stand out visually.

Use Tailwind's custom shadow-[drop-shadow(...)] syntax for irregular shapes.

Combine with clip-path to create and shadow any shape you want.

Practice

(1/5)
1. What is the main purpose of using a drop shadow on irregular shapes in Tailwind CSS?
easy
A. To add depth and make the shape stand out visually
B. To change the shape's color
C. To make the shape larger
D. To remove the shape's border

Solution

  1. Step 1: Understand drop shadow effect

    Drop shadows create a shadow behind an element, giving it a sense of depth.
  2. Step 2: Apply to irregular shapes

    Using drop shadows on irregular shapes helps them visually pop from the background.
  3. Final Answer:

    To add depth and make the shape stand out visually -> Option A
  4. Quick Check:

    Drop shadow purpose = add depth [OK]
Hint: Drop shadows make shapes look lifted and clear [OK]
Common Mistakes:
  • Thinking drop shadows change color
  • Confusing drop shadows with resizing
  • Assuming drop shadows remove borders
2. Which Tailwind CSS class correctly applies a custom drop shadow with a blur radius of 5px and offset of 3px 3px?
easy
A. drop-shadow-3-3-5
B. shadow-3px-3px-5px
C. shadow-custom(3px,3px,5px)
D. shadow-[drop-shadow(3px_3px_5px_rgba(0,0,0,0.5))]

Solution

  1. Step 1: Recognize Tailwind custom shadow syntax

    Tailwind uses square brackets for custom CSS values, e.g., shadow-[drop-shadow(...)]
  2. Step 2: Match the correct CSS drop-shadow format

    The correct CSS function is drop-shadow(offsetX offsetY blurRadius color), here 3px 3px 5px rgba(0,0,0,0.5)
  3. Final Answer:

    shadow-[drop-shadow(3px_3px_5px_rgba(0,0,0,0.5))] -> Option D
  4. Quick Check:

    Custom drop shadow syntax = shadow-[drop-shadow(...)] [OK]
Hint: Use square brackets with drop-shadow(...) inside shadow- class [OK]
Common Mistakes:
  • Missing square brackets for custom values
  • Using invalid class names without brackets
  • Confusing drop-shadow with shadow utilities
3. Given this HTML and Tailwind CSS snippet:
<div class="w-40 h-40 bg-blue-500 clip-path-[polygon(50%_0%,100%_50%,50%_100%,0%_50%)] shadow-[drop-shadow(4px_4px_6px_rgba(0,0,0,0.4))]"></div>

What will you see rendered in the browser?
medium
A. A blue square with no shadow
B. A blue diamond shape with a soft shadow offset to bottom-right
C. A blue circle with a sharp shadow
D. A blue triangle with a shadow on top-left

Solution

  1. Step 1: Analyze clip-path polygon points

    The polygon points create a diamond shape by connecting top, right, bottom, and left midpoints.
  2. Step 2: Understand drop shadow parameters

    The drop shadow is offset 4px right and 4px down with a 6px blur and semi-transparent black color, creating a soft shadow bottom-right.
  3. Final Answer:

    A blue diamond shape with a soft shadow offset to bottom-right -> Option B
  4. Quick Check:

    clip-path diamond + drop shadow offset = diamond with shadow [OK]
Hint: Polygon points define shape; drop-shadow offsets shadow direction [OK]
Common Mistakes:
  • Ignoring clip-path shape and expecting a square
  • Confusing shadow offset direction
  • Assuming circle shape from polygon
4. You wrote this Tailwind class for an irregular shape shadow:
shadow-[drop-shadow(5px 5px 10px rgba(0,0,0,0.3))]
But the shadow does not appear. What is the likely issue?
medium
A. Spaces inside square brackets should be replaced with underscores
B. The rgba color is invalid
C. Drop shadow does not work with clip-path
D. The shadow class must be placed on a parent element

Solution

  1. Step 1: Check Tailwind custom class syntax

    Tailwind requires no spaces inside square brackets for custom values; spaces must be replaced with underscores.
  2. Step 2: Confirm correct syntax for drop-shadow

    Correct syntax is shadow-[drop-shadow(5px_5px_10px_rgba(0,0,0,0.3))] with underscores instead of spaces.
  3. Final Answer:

    Spaces inside square brackets should be replaced with underscores -> Option A
  4. Quick Check:

    Custom class spaces = underscores [OK]
Hint: Replace spaces with underscores inside custom bracket classes [OK]
Common Mistakes:
  • Leaving spaces inside square brackets
  • Assuming rgba color is wrong
  • Thinking drop shadow can't be used with clip-path
5. You want to create a star shape with a drop shadow using Tailwind CSS. Which combination of classes correctly applies a star clip-path and a subtle drop shadow offset to the bottom-right?
hard
A. clip-path-star shadow-[drop-shadow(4px_4px_10px_rgba(0,0,0,0.5))]
B. clip-star shadow-drop(2px_2px_4px_rgba(0,0,0,0.25))
C. clip-path-[polygon(50%_0%,61%_35%,98%_35%,68%_57%,79%_91%,50%_70%,21%_91%,32%_57%,2%_35%,39%_35%)] shadow-[drop-shadow(2px_2px_4px_rgba(0,0,0,0.25))]
D. clip-polygon-star shadow-[drop-shadow(0_0_0_rgba(0,0,0,0))]

Solution

  1. Step 1: Identify correct clip-path polygon for star

    The polygon points in clip-path-[polygon(50%_0%,61%_35%,98%_35%,68%_57%,79%_91%,50%_70%,21%_91%,32%_57%,2%_35%,39%_35%)] shadow-[drop-shadow(2px_2px_4px_rgba(0,0,0,0.25))] define a star shape using percentages and underscores for spaces.
  2. Step 2: Check drop shadow syntax and subtlety

    clip-path-[polygon(50%_0%,61%_35%,98%_35%,68%_57%,79%_91%,50%_70%,21%_91%,32%_57%,2%_35%,39%_35%)] shadow-[drop-shadow(2px_2px_4px_rgba(0,0,0,0.25))] uses shadow-[drop-shadow(2px_2px_4px_rgba(0,0,0,0.25))], a subtle shadow offset bottom-right with correct syntax.
  3. Final Answer:

    clip-path-polygon star with subtle drop shadow using underscores -> Option C
  4. Quick Check:

    Star shape + correct drop shadow syntax = clip-path-[polygon(50%_0%,61%_35%,98%_35%,68%_57%,79%_91%,50%_70%,21%_91%,32%_57%,2%_35%,39%_35%)] shadow-[drop-shadow(2px_2px_4px_rgba(0,0,0,0.25))] [OK]
Hint: Use polygon points with underscores and subtle rgba shadow [OK]
Common Mistakes:
  • Using invalid class names like clip-star
  • Incorrect drop shadow syntax without brackets
  • No shadow or zero offset shadow