Transforms

Transform Origin

Utilities for specifying the origin for an element’s transformations.

Quick reference

Class
Properties
origin-centertransform-origin: center;
origin-toptransform-origin: top;
origin-top-righttransform-origin: top right;
origin-righttransform-origin: right;
origin-bottom-righttransform-origin: bottom right;
origin-bottomtransform-origin: bottom;
origin-bottom-lefttransform-origin: bottom left;
origin-lefttransform-origin: left;
origin-top-lefttransform-origin: top left;

Basic usage

Changing the transform origin

Specify an element’s transform origin using the origin-{keyword} utilities.

Transform Origin - 图1

  1. <img class="origin-center rotate-45 ...">
  2. <img class="origin-top-left rotate-12 ...">
  3. <img class="origin-bottom -rotate-12 ...">

Applying conditionally

Hover, focus, and other states

Tailwind lets you conditionally apply utility classes in different states using variant modifiers. For example, use hover:origin-top to only apply the origin-top utility on hover.

  1. <div class="origin-center hover:origin-top">
  2. <!-- ... -->
  3. </div>

For a complete list of all available state modifiers, check out the Hover, Focus, & Other States documentation.

Breakpoints and media queries

You can also use variant modifiers to target media queries like responsive breakpoints, dark mode, prefers-reduced-motion, and more. For example, use md:origin-top to apply the origin-top utility at only medium screen sizes and above.

  1. <div class="origin-center md:origin-top">
  2. <!-- ... -->
  3. </div>

To learn more, check out the documentation on Responsive Design, Dark Mode and other media query modifiers.


Using custom values

Customizing your theme

By default, Tailwind provides transform-origin utilities for all of the built-in browser keyword options. You can customize these values by editing theme.transformOrigin or theme.extend.transformOrigin in your tailwind.config.js file.

tailwind.config.js

  1. module.exports = {
  2. theme: {
  3. extend: {
  4. transformOrigin: {
  5. 'top-left-1/3-3/4': '33% 75%',
  6. }
  7. }
  8. }
  9. }

Learn more about customizing the default theme in the theme customization documentation.

Arbitrary values

If you need to use a one-off transform-origin value that doesn’t make sense to include in your theme, use square brackets to generate a property on the fly using any arbitrary value.

  1. <div class="origin-[33%_75%]">
  2. <!-- ... -->
  3. </div>

Learn more about arbitrary value support in the arbitrary values documentation.