Bird
Raised Fist0
Tailwindmarkup~5 mins

Square bracket notation for custom values in Tailwind

Choose your learning style10 modes available
Introduction

Square bracket notation lets you use any value you want in Tailwind styles. It helps when the default options don't fit your design.

You want a color that Tailwind doesn't have by default.
You need a specific size like width or height that is not in Tailwind's scale.
You want to add a custom margin or padding value.
You want to use a special font size or line height not included in Tailwind.
You want to apply a custom CSS property value quickly without editing config files.
Syntax
Tailwind
class="property-[value]"

Replace property with the Tailwind utility name like bg, w, m, etc.

Put your custom value inside square brackets exactly as you want it in CSS, for example [10px] or [var(--my-color)].

Examples
This sets a tomato red background and 15 pixels padding using custom values.
Tailwind
<div class="bg-[#ff6347] p-[15px]">Hello</div>
This creates a box with a width of 250 pixels and height of 100 pixels, using a default blue background.
Tailwind
<div class="w-[250px] h-[100px] bg-blue-200">Box</div>
Here, the text size and line height are set to custom rem values.
Tailwind
<p class="text-[1.75rem] leading-[2rem]">Custom text size and line height</p>
Sample Program

This page shows three elements using square bracket notation for custom colors, sizes, and spacing. You see a green box with 20px padding, an orange box sized 300 by 150 pixels, and a paragraph with custom text size and line height.

Tailwind
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>Tailwind Custom Values</title>
  <script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="flex flex-col items-center justify-center min-h-screen gap-6 bg-gray-50">
  <div class="bg-[#4caf50] p-[20px] rounded text-white font-semibold">
    Custom green background with 20px padding
  </div>
  <div class="w-[300px] h-[150px] bg-[#ff5722] flex items-center justify-center text-white font-bold">
    300px by 150px box
  </div>
  <p class="text-[2rem] leading-[2.5rem] text-gray-700">
    Custom font size and line height
  </p>
</body>
</html>
OutputSuccess
Important Notes

Always include the exact CSS value inside the brackets, including units like px, rem, or color codes.

Square bracket notation works with most Tailwind utilities but not all. Check Tailwind docs if unsure.

Use this to quickly try custom styles without changing your Tailwind config file.

Summary

Square bracket notation lets you add any CSS value inside Tailwind classes.

Use it when Tailwind's default values don't match your design needs.

Remember to include units and proper CSS syntax inside the brackets.

Practice

(1/5)
1. What does the square bracket notation in Tailwind CSS allow you to do?
easy
A. Disable Tailwind's default styles
B. Write JavaScript code inside Tailwind classes
C. Create new Tailwind utility classes permanently
D. Use custom CSS values not included in Tailwind's default set

Solution

  1. Step 1: Understand Tailwind's default values

    Tailwind provides a set of predefined values for spacing, colors, sizes, etc.
  2. Step 2: Role of square bracket notation

    Square bracket notation lets you write any CSS value directly inside a class, like mt-[10px] for margin-top 10 pixels.
  3. Final Answer:

    Use custom CSS values not included in Tailwind's default set -> Option D
  4. Quick Check:

    Square brackets = custom CSS values [OK]
Hint: Square brackets mean custom CSS values inside Tailwind classes [OK]
Common Mistakes:
  • Thinking it creates new permanent classes
  • Confusing with JavaScript code inside classes
  • Assuming it disables Tailwind styles
2. Which of the following is the correct Tailwind class to set a width of exactly 250 pixels using square bracket notation?
easy
A. width-[250]
B. w-[250px]
C. w-250px
D. w-[250]

Solution

  1. Step 1: Identify correct Tailwind prefix for width

    Tailwind uses w- prefix for width utilities.
  2. Step 2: Use square brackets with full CSS value

    Inside brackets, you must include the unit, so 250px is correct.
  3. Final Answer:

    w-[250px] -> Option B
  4. Quick Check:

    Width with unit inside brackets = w-[250px] [OK]
Hint: Use full CSS value with units inside brackets after utility prefix [OK]
Common Mistakes:
  • Omitting units inside brackets
  • Using wrong prefix like width-
  • Not using brackets for custom values
3. What will be the rendered width of a div with class class="w-[15rem]" in Tailwind CSS?
medium
A. 15 rem units (usually 15 times root font size)
B. 15 pixels
C. 15 percent width
D. 15 viewport width units

Solution

  1. Step 1: Understand the CSS unit inside brackets

    The class w-[15rem] sets width to 15 rem units, where 1 rem equals the root font size (usually 16px).
  2. Step 2: Interpret the rendered size

    15 rem means 15 times the root font size, so it is not pixels or percent but relative to font size.
  3. Final Answer:

    15 rem units (usually 15 times root font size) -> Option A
  4. Quick Check:

    Square bracket value with rem = relative font size width [OK]
Hint: Read units inside brackets literally as CSS units [OK]
Common Mistakes:
  • Assuming rem means pixels
  • Confusing rem with percent or viewport units
  • Ignoring units inside brackets
4. You wrote class="p-[20]" to add padding of 20 pixels, but it doesn't work. What is the error?
medium
A. Padding cannot be customized in Tailwind
B. Square brackets are not allowed for padding
C. Missing unit inside square brackets
D. Class name should be padding-[20px]

Solution

  1. Step 1: Check the syntax of the custom value

    Inside square brackets, you must include the CSS unit, like 20px, not just a number.
  2. Step 2: Understand Tailwind's requirement for units

    Without units, the CSS value is invalid, so the style won't apply.
  3. Final Answer:

    Missing unit inside square brackets -> Option C
  4. Quick Check:

    Always include units inside brackets for custom values [OK]
Hint: Always add units like px, rem inside brackets for spacing [OK]
Common Mistakes:
  • Omitting units inside brackets
  • Using wrong class names like padding-
  • Thinking padding can't be customized
5. You want a button with a background color exactly #1a73e8 and a border radius of 12px using Tailwind's square bracket notation. Which class combination is correct?
hard
A. bg-[#1a73e8] rounded-[12px]
B. bg-#1a73e8 rounded-12px
C. background-[#1a73e8] border-radius-[12px]
D. bg-[#1a73e8] rounded-[12]

Solution

  1. Step 1: Use correct Tailwind prefixes

    Background color uses bg- and border radius uses rounded-.
  2. Step 2: Apply square bracket notation with full CSS values

    Inside brackets, include the full hex color #1a73e8 and the unit 12px for radius.
  3. Step 3: Check for syntax correctness

    bg-[#1a73e8] rounded-[12px] uses correct prefixes and proper bracket notation with units and hash symbol.
  4. Final Answer:

    bg-[#1a73e8] rounded-[12px] -> Option A
  5. Quick Check:

    Use correct prefixes + full CSS values in brackets [OK]
Hint: Use bg- and rounded- with full CSS values inside brackets [OK]
Common Mistakes:
  • Omitting # in hex color
  • Missing units for border radius
  • Using wrong prefixes like background-
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard