辅助类 - 状态样式

除了给默认状态设置样式外,还支持几个特定状态的样式设置比如:hover(鼠标悬停)、active(当前选中)、focus(当前聚焦)或者 disabled(当前不可用)。

  1. <button
  2. class="Button
  3. rounded-xl text-light
  4. bg-pink-400 border-pink-600
  5. hover:bg-pink-500 hover:border-pink-800
  6. active:bg-pink-600 active:border-pink-900"
  7. >
  8. 按钮示例
  9. </button>
  10. <button
  11. class="Button m-l-16
  12. rounded-xl text-light
  13. bg-pink-500 border-pink-800
  14. hover:bg-pink-500 hover:border-pink-800"
  15. >
  16. 悬停态
  17. </button>
  18. <button
  19. class="Button m-l-xs
  20. rounded-xl text-light
  21. bg-pink-600 border-pink-900
  22. hover:bg-pink-600 hover:border-pink-900"
  23. >
  24. 按下态
  25. </button>
  26. <button
  27. class="Button m-l-xs
  28. rounded-xl text-light
  29. disabled:text-dark disabled:bg-pink-200 disabled:border-pink-400"
  30. disabled
  31. >
  32. 禁用态
  33. </button>

Hover

在 css 类名前面添加 hover: 表示在 hover 时启用这个样式比如。

  1. <button
  2. class="Button
  3. text-blue-500
  4. hover:text-red-500"
  5. >
  6. 蓝色按钮,hover 红色
  7. </button>

Group-Hover

当 hover 某个元素的时候,你想要给子元素设置不同的样式,需要两步操作。

  1. 给容器添加 group 类名。
  2. 给子元素添加 group-hover: 前缀形式的样式类。
  1. <div
  2. class="group p-4 border border-solid border-dark
  3. hover:bg-dark"
  4. >
  5. <p class="group-hover:text-red-500">整体hover 红色</p>
  6. <p class="group-hover:text-green-500">整体hover 绿色</p>
  7. </div>

Focus

当要给元素设置「聚焦态」样式时,类名添加 focus: 前缀。

  1. <button
  2. class="Button
  3. text-blue-500
  4. focus:border-dark
  5. focus:text-red-500"
  6. >
  7. 蓝色按钮,focus 红色
  8. </button>

Active

当要给元素设置「选中态」样式时,类名添加 active: 前缀。

  1. <button
  2. class="Button
  3. text-blue-500
  4. active:border-dark
  5. active:text-red-500
  6. is-active"
  7. >
  8. 蓝色按钮,active 红色
  9. </button>

Disabled

当要给元素设置「禁用态」样式时,类名添加 disabled: 前缀。

  1. <button
  2. disabled
  3. class="Button
  4. text-blue-500
  5. disabled:border-dark
  6. disabled:text-red-500"
  7. >
  8. 蓝色按钮,disabled 红色
  9. </button>

结合响应式设计一起?

那就先加「设备前缀」,再加「状态前缀」。如:pc:hover:bg-pink-500m:hover:bg-blue-500

  1. <button
  2. class="Button
  3. rounded-xl text-light
  4. pc:bg-pink-400 pc:border-pink-600
  5. pc:hover:bg-pink-500 pc:hover:border-pink-800
  6. m:bg-blue-400 m:border-blue-600
  7. m:hover:bg-blue-500 m:hover:border-blue-800
  8. "
  9. >
  10. 按钮示例
  11. </button>