Latest in branch 1.1
1.1.4
Released 25 Nov 2019
(6 years ago)
SoftwareTailwind CSS
Branch1.1
Initial release1.1.0
06 Aug 2019
(6 years ago)
Latest release1.1.4
25 Nov 2019
(6 years ago)
Support status05 Feb 2020
(Ended 6 years, 3 months ago)
Release noteshttps://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.4
Source codehttps://github.com/tailwindlabs/tailwindcss/tree/v1.1.4
Downloadhttps://github.com/tailwindlabs/tailwindcss/releases/tag/v1.1.4
Tailwind CSS 1.1 ReleasesView full list

What Is New in Tailwind CSS 1.1

CategoryHighlights
New Featuressr-only / not-sr-only utilities, placeholder-color utilities, first/last/odd/even child variants, disabled & visited variants, border-double utility, negative prefixes for boxShadow & letterSpacing, object syntax for config path
ImprovementsHover/focus variants for opacity enabled by default, utility specificity via selector instead of !important
Bug FixesPlaceholders no longer inherit opacity, hr elements now visible by default, correct negative margins when using calc()
Breaking ChangesDefault placeholder opacity removed, hr now has a 1 px border, negative-margin calculation adjusted for complex values

How can I hide content from sighted users while keeping it accessible to screen readers?

The answer is to use the new sr-only and not-sr-only utilities that Tailwind v1.1 adds.

In practice you apply sr-only to hide an element visually but keep it readable by assistive technology, and you can reverse the effect with not-sr-only on larger breakpoints or on focus.

<a href="#">
  <svg><!-- ... --></svg>
  <span class="sr-only">Settings</span>
</a>

<span class="sr-only sm:not-sr-only">Hidden on mobile, visible on desktop</span>

<a href="#" class="sr-only focus:not-sr-only">Skip to content</a>

These utilities generate responsive and focus variants by default, and you can customise the variant list in the variants.accessibility section of your config.

How do I style placeholder text and form elements more precisely?

The answer is that Tailwind v1.1 introduces placeholder-{color} utilities and removes the old default placeholder opacity.

In practice you now control placeholder colour directly with utilities like placeholder-gray-500 and you no longer need to fight an inherited 0.5 opacity.

<input class="text-red-500 placeholder-red-300 border border-gray-300 p-2">

If you need additional variants (e.g., hover or active) you can extend variants.placeholderColor in your tailwind.config.js.

What new pseudo-class variants are available for targeting child elements?

The answer is that v1.1 adds first, last, odd, and even variants for any core utility.

These let you apply styles only to the first, last, odd-indexed, or even-indexed child of a parent, which is perfect for borders, zebra striping, or spacing in loops.

<ul>
  <li class="border-t first:border-t-0">Item 1</li>
  <li class="border-t first:border-t-0">Item 2</li>
</ul>

<table>
  <tr v-for="row in rows">
    <td class="odd:bg-white even:bg-gray-200">...</td>
    <td class="odd:bg-white even:bg-gray-200">...</td>
  </tr>
</table>

Enable them per-utility in the variants section, for example adding first and last to backgroundColor.

How can I increase utility specificity without using !important?

The answer is to set the important option to a CSS selector instead of a boolean.

In practice you wrap your app in an element with an ID (or class) and tell Tailwind to prefix every generated utility with that selector, raising specificity without polluting the cascade with !important.

// tailwind.config.js
module.exports = {
  important: '#app',
  // ...
}

Then in your HTML you add the matching ID:

<body id="app">
  <div class="text-red-500">Will win over other classes</div>
</body>

This is especially useful when third-party libraries inject inline styles that would otherwise outrank Tailwind utilities.

What bug fixes should I be aware of when upgrading to v1.1?

The answer is that three key fixes may affect the visual output of existing sites.

  • Placeholders now use gray-500 colour and no longer inherit a 0.5 opacity, so inputs that relied on the old behaviour will appear lighter.
  • Horizontal rules (hr) now have a default 1px border, making them visible out-of-the-box; add border-0 to hide them.
  • Negative margins generated from complex values (e.g., calc() or CSS variables) are now calculated correctly using calc, which may change the exact pixel output for previously hand-crafted values.

Frequently Asked Questions

Do I need to modify my config to enable the new first/last/odd/even variants?
You add the desired pseudo-class names to the variants array for each core plugin you want to use.

How do I enable the disabled variant for opacity?
Add "disabled" to the opacity variants list in tailwind.config.js.

Can I still use the global important flag as a boolean?
Yes, the boolean form still works; the selector form is an additional option.

What is the recommended way to change placeholder colour?
Use the placeholder-{color} utility, for example placeholder-gray-400.

Will existing hr elements disappear after the upgrade?
No, they will become visible because Tailwind now applies a 1 px border by default.

How do I generate a negative box-shadow utility?
Define a negative key in the boxShadow section of the theme, such as "-sm": "inset 0 2px 4px rgba(0,0,0,0.1)".

Releases In Branch 1.1

VersionRelease date
1.1.425 Nov 2019
(6 years ago)
1.1.322 Oct 2019
(6 years ago)
1.1.214 Aug 2019
(6 years ago)
1.1.109 Aug 2019
(6 years ago)
1.1.006 Aug 2019
(6 years ago)