Skip to content

Mini preset ​

Preset พื้นฐานสำหรับ UnoCSS มีเฉพาะ utilities ที่จำเป็นที่สุด

Source Code

การติดตั้ง ​

bash
pnpm add -D @unocss/preset-mini
bash
yarn add -D @unocss/preset-mini
bash
npm install -D @unocss/preset-mini
bash
bun add -D @unocss/preset-mini
ts
import presetMini from '@unocss/preset-mini'
import { defineConfig } from 'unocss'

export default defineConfig({
  presets: [
    presetMini(),
    // ...presets อื่นๆ
  ],
})

TIP

preset นี้รวมอยู่ในแพ็กเกจ unocss คุณสามารถ import จากที่นั่นได้เช่นกัน:

ts
import { presetMini } from 'unocss'

Rules ​

preset นี้เป็น subset ของ @unocss/preset-wind3 มีเฉพาะ utilities ที่จำเป็นที่สุดที่สอดคล้องกับ CSS properties แต่ไม่รวม utilities ที่มีความคิดเห็นหรือซับซ้อนที่แนะนำใน Tailwind CSS (container, animation, gradient ฯลฯ) นี่สามารถเป็นจุดเริ่มต้นที่ดีสำหรับ custom preset ของคุณเองบนพื้นฐานของ utilities ที่คุ้นเคยจาก Tailwind CSS หรือ Windi CSS

Features ​

Dark mode ​

โดยค่าเริ่มต้น preset นี้สร้าง class-based dark mode ด้วย dark: variant

html
<div class="dark:bg-red:10" />

จะสร้าง:

css
.dark .dark\:bg-red\:10 {
  background-color: rgb(248 113 113 / 0.1);
}

Media query based dark mode ​

เพื่อใช้ media query based dark mode ทั่วโลกแทน คุณสามารถเปลี่ยน config สำหรับ dark: variant:

ts
presetMini({
  dark: 'media'
})

ตอนนี้

html
<div class="dark:bg-red:10" />

จะสร้าง:

css
@media (prefers-color-scheme: dark) {
  .dark\:bg-red\:10 {
    background-color: rgb(248 113 113 / 0.1);
  }
}

CSS @layer ​

CSS's native @layer ได้รับการสนับสนุนด้วย variant layer-xx:

html
<div class="layer-foo:p4" />
<div class="layer-bar:m4" />

จะสร้าง:

css
@layer foo {
  .layer-foo\:p4 {
    padding: 1rem;
  }
}
@layer bar {
  .layer-bar\:m4 {
    margin: 1rem;
  }
}

Theme ​

คุณสามารถปรับแต่ง theme property ของคุณได้อย่างเต็มที่ใน config ของคุณ และ UnoCSS จะ merge แบบ deep ไปยัง default theme ในที่สุด

WARNING

breakpoints property ไม่ถูก merge แบบ deep แต่ถูก override ดู Breakpoints

ts
presetMini({
  theme: {
    // ...
    colors: {
      veryCool: '#0000ff', // class="text-very-cool"
      brand: {
        primary: 'hsl(var(--hue, 217) 78% 51%)', // class="bg-brand-primary"
      }
    },
  }
})

Options ​

dark ​

  • Type: class | media | DarkModeSelectors
  • Default: class

ตัวเลือก dark mode สามารถเป็น class, media, หรือ custom selector object(DarkModeSelectors)

ts
interface DarkModeSelectors {
  /**
   * Selector for light variant.
   *
   * @default '.light'
   */
  light?: string

  /**
   * Selector for dark variant.
   *
   * @default '.dark'
   */
  dark?: string
}

attributifyPseudo ​

  • Type: Boolean
  • Default: false

สร้าง pseudo selector เป็น [group=""] แทน .group

variablePrefix ​

  • Type: string
  • Default: un-

Prefix สำหรับ CSS custom properties

prefix ​

  • Type: string | string[]
  • Default: undefined

Utils prefix

preflight ​

  • Type: boolean | on-demand
  • Default: true

สร้าง preflight css สามารถเป็น:

  • true: สร้าง preflight เสมอ
  • false: ไม่มี preflight
  • on-demand: สร้าง preflight เฉพาะสำหรับ utilities ที่ใช้

Released under the MIT License.