Tagify プリセット

UnoCSS の Tagify モード (@unocss/preset-tagify)。

Tagify プリセット

これは他のプリセットに対してtagifyモードを有効にします。

ソースコード

インストール

::: code-group

pnpm
pnpm add -D @unocss/preset-tagify
yarn
yarn add -D @unocss/preset-tagify
npm
npm install -D @unocss/preset-tagify
bun
bun add -D @unocss/preset-tagify

:::

uno.config.ts
import presetTagify from '@unocss/preset-tagify'
import { defineConfig } from 'unocss'

export default defineConfig({
  presets: [
    presetTagify({ /* options */ }),
    // ...他のプリセット
  ],
})

Tagify モード

このプリセットは、単一の unocss ルールを要素に適用する必要がある場合に便利です。

<span class="text-red"> red text </span>
<div class="flex">flexbox</div>
I'm feeling <span class="i-line-md-emoji-grin"></span> today!

Tagify モードを使用すると、CSS スタイルを HTML タグに埋め込むことができます:

<text-red> red text </text-red>
<flex> flexbox </flex>
I'm feeling <i-line-md-emoji-grin /> today!

上記の HTML は、期待通りに動作します。

プレフィックス付き

presetTagify({
  prefix: 'un-'
})
<!-- これは一致します -->
<un-flex> </un-flex>
<!-- これは一致しません -->
<flex> </flex>

追加プロパティ

一致したルールに追加のプロパティを注入できます:

presetTagify({
  // 一致したアイコンに display: inline-block を追加
  extraProperties: matched => matched.startsWith('i-')
    ? { display: 'inline-block' }
    : { }
})
presetTagify({
  // extraProperties はプレーンオブジェクトでも可能
  extraProperties: { display: 'block' }
})

オプション

prefix

  • 型: string

Tagify バリアントに使用するプレフィックス。

excludedTags

  • 型: (string | RegExp)[]
  • デフォルト: ['b', /^h\d+$/, 'table']

処理から除外されるタグ。

extraProperties

  • 型: Record<string,> | ((matched: string) => Partial<Record<string, string>>)

一致したルールに適用する追加の CSS プロパティ。

defaultExtractor

  • 型: boolean
  • デフォルト: true

デフォルトのエクストラクタを有効にします。