note icon indicating copy to clipboard operation
note copied to clipboard

您好,请教一下。unocss的同属性类名总是前面前面覆盖后面的,是否能像Windi CSS一样后面的类名覆盖前面的类名?

Open tieniu1 opened this issue 1 year ago • 0 comments

如图同样的代码,在windicss中显示绿色,在unocss中显示红色,我觉得这样做很反直觉。 请问,我希望unocss可以和windcss表现的一样,应该怎么做? image

这是我碰到的一个困难

<!--  son.vue -->
<template> 
  <a
    class="text-white"
  >
    <slot>
     免费注册
    </slot>
  </a>
</template>


<!--  parent.vue -->
<template> 
  <son class="text-black" ></son>
</template>

这时,浏览器调试器中看到的标签是这样的。<a class="text-white text-black">免费注册<a> ,显示的字体颜色仍然是白色。 我现在的做法是通过!text-black来强制覆盖为黑色。请问有什么更优雅的方式解决吗?

这是我的uno.config.js

import { defineConfig, presetAttributify, presetUno, transformerVariantGroup } from 'unocss'
import transformerDirectives from '@unocss/transformer-directives' // 支持@apply
export default defineConfig({
  theme: {
    colors: {
      primary: 'var(--color-base)',
      main: 'var(--color-main)',
      'main-dark': 'var(--color-main-dark)'
    }
  },
  presets: [
    presetAttributify({
      /* preset options */
    }),
    presetUno()
  ],
  transformers: [transformerDirectives(), transformerVariantGroup()],
})

tieniu1 avatar Jul 26 '24 06:07 tieniu1