快速参考

属性
ring-0box-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
ring-1box-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
ring-2box-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
ringbox-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
ring-4box-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
ring-8box-shadow: var(--tw-ring-inset) 0 0 0 calc(8px + var(--tw-ring-offset-width)) var(--tw-ring-color);
ring-inset--tw-ring-inset: inset;

基本用法

添加一个环

使用ring-{width}实用程序将特定厚度的实心盒阴影应用于元素。默认情况下,环是半透明的蓝色,类似于许多系统中的默认焦点环样式。

ring-2

ring

ring-4

<button class="... ring-offset-2 ring-2">Button A</button>
<button class="... ring-offset-2 ring">Button B</button>
<button class="... ring-offset-2 ring-4">Button C</button>

环形实用程序与常规的 shadow-{size} 实用程序完美搭配,可以在同一个元素上组合使用。

您还可以使用 ringColorringOpacityringOffsetWidth 实用程序来控制环形的颜色、不透明度和偏移量。

焦点环

环形宽度实用程序使您可以轻松地使用自定义焦点环,方法是在任何 ring-{width} 实用程序的开头添加 focus:

将焦点放在此按钮上,查看环形出现。

<button class="... focus:ring-2">Save Changes</button>

focus 变体默认情况下为 ringColorringOpacityringOffsetWidthringOffsetColor 实用程序启用。

内嵌环

使用 ring-inset 实用程序强制环形在元素内部而不是外部渲染。这对于屏幕边缘的元素很有用,因为环形的一部分将不可见。

<button class="... ring-2 ring-pink-300 ring-inset">
  Save Changes
</button>

有条件地应用

悬停、焦点和其他状态

Tailwind 允许您使用变体修饰符在不同的状态下有条件地应用实用程序类。例如,使用 hover:ring-4 仅在悬停时应用 ring-4 实用程序。

<div class="ring-2 hover:ring-4">
  <!-- ... -->
</div>

有关所有可用状态修饰符的完整列表,请查看 悬停、焦点和其它状态 文档。

断点和媒体查询

您也可以使用变体修饰符来针对媒体查询,例如响应式断点、暗黑模式、 prefers-reduced-motion 等等。例如,使用 md:ring-4 仅在中等屏幕尺寸及以上应用 ring-4 实用程序。

<div class="ring-2 md:ring-4">
  <!-- ... -->
</div>

要了解更多信息,请查看有关 响应式设计暗黑模式其他媒体查询修饰符 的文档。


使用自定义值

自定义主题

默认情况下,Tailwind 包含一些通用的 ring-width 实用程序。您可以通过编辑 tailwind.config.js 文件中的 theme.ringWidththeme.extend.ringWidth 来自定义这些值。

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      ringWidth: {
        '10': '10px',
      }
    }
  }
}

主题自定义 文档中了解有关自定义默认主题的更多信息。

任意值

如果您需要使用一个不适合包含在主题中的 ring 值,请使用方括号使用任何任意值动态生成属性。

<div class="ring-[10px]">
  <!-- ... -->
</div>

任意值 文档中了解有关任意值支持的更多信息。