Skip to content

Пресет Tagify

Включает режим тегов для других пресетов.

Исходный код

Установка

bash
pnpm add -D @unocss/preset-tagify
bash
yarn add -D @unocss/preset-tagify
bash
npm install -D @unocss/preset-tagify
bash
bun add -D @unocss/preset-tagify
uno.config.ts
ts
import presetTagify from '@unocss/preset-tagify'
import { defineConfig } from 'unocss'

export default defineConfig({
  presets: [
    presetTagify({ /* параметры */ }),
    // ...другие пресеты
  ],
})

Режим тегов

Этот пресет может быть полезен, когда вам нужно применить к элементу только одно правило UnoCSS.

html
<span class="text-red"> красный текст </span>
<div class="flex">флексбокс</div>
Я сегодня чувствую <span class="i-line-md-emoji-grin"></span>!

С режимом тегов вы можете встраивать CSS-стили в HTML-теги:

html
<text-red> красный текст </text-red>
<flex> флексбокс </flex>
Я сегодня чувствую <i-line-md-emoji-grin />!

HTML выше работает именно так, как вы ожидаете.

С префиксом

js
presetTagify({
  prefix: 'un-'
})
html
<!-- это совпадет -->
<un-flex> </un-flex>
<!-- это не совпадет -->
<flex> </flex>

Дополнительные свойства

Вы можете добавлять дополнительные свойства к совпавшим правилам:

js
presetTagify({
  // добавляет display: inline-block к совпавшим иконкам
  extraProperties: matched => matched.startsWith('i-')
    ? { display: 'inline-block' }
    : { }
})
js
presetTagify({
  // extraProperties также может быть простым объектом
  extraProperties: { display: 'block' }
})

Опции

prefix

  • Тип: string

Префикс, который будет использоваться для варианта tagify.

excludedTags

  • Тип: (string | RegExp)[]
  • По умолчанию: ['b', /^h\d+$/, 'table']

Теги, исключённые из обработки.

extraProperties

  • Тип: Record<string, string> | ((matched: string) => Partial<Record<string, string>>)

Дополнительные свойства CSS, применяемые к совпавшим правилам.

defaultExtractor

  • Тип: boolean
  • По умолчанию: true

Включить экстрактор по умолчанию.

Распространяется по лицензии MIT.