Утилиты для управления семейством шрифтов элемента.
xxxxxxxxxx
font-sans
.font-sans { font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; }
export default {
theme: {
extend: {
fontFamily: {
sans: ['ui-sans-serif', 'system-ui'],
serif: ['ui-serif', 'Georgia'],
mono: ['ui-monospace', 'SFMono-Regular'],
display: ['Oswald'],
body: ['Open Sans'],
},
},
},
}
Семейства шрифтов можно указать как массив или как простую строку с разделителями-запятыми:
{
// Формат массива:
"sans": ["Helvetica", "Arial", "sans-serif"],
// Формат с разделителями-запятыми:
"sans": "Helvetica, Arial, sans-serif",
}
Обратите внимание, что Windi CSS не экранирует имена шрифтов автоматически. Если вы используете шрифт, содержащий недопустимый идентификатор, заключите его в кавычки или экранируйте недопустимые символы.
{
// Не будет работать:
"sans": ["Exo 2", /* ... */],
// Добавить кавычки:
"sans": ["\"Exo 2\"", /* ... */],
}
Утилиты для управления размером шрифта элемента.
xxxxxxxxxx
text-base
.text-base { font-size: 1rem; line-height: 1.5rem; }
export default {
theme: {
fontSize: {
'xs': '.75rem',
'sm': '.875rem',
'tiny': '.875rem',
'base': '1rem',
'lg': '1.125rem',
'xl': '1.25rem',
'2xl': '1.5rem',
'3xl': '1.875rem',
'4xl': '2.25rem',
'5xl': '3rem',
'6xl': '4rem',
'7xl': '5rem',
},
},
}
Вы можете указать высоту строки по умолчанию для каждого размера шрифта, используя кортеж формы [fontSize, lineHeight] в файле windi.config.js.
export default {
theme: {
fontSize: {
sm: ['14px', '20px'],
base: ['16px', '24px'],
lg: ['20px', '28px'],
xl: ['24px', '32px'],
},
},
}
Если вы также хотите указать значение межбуквенного интервала по умолчанию для размера шрифта, вы можете сделать это, используя кортеж вида [fontSize, { letterSpacing, lineHeight }]
в вашем файле windi.config.js.
export default {
theme: {
fontSize: {
'2xl': ['24px', {
letterSpacing: '-0.01em',
}],
// Or with a default line-height as well
'3xl': ['32px', {
letterSpacing: '-0.02em',
lineHeight: '40px',
}],
},
},
}
Утилиты для управления сглаживанием шрифта элемента.
xxxxxxxxxx
antialiased
.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
Утилиты для управления стилем текста.
xxxxxxxxxx
italic
.italic { font-style: italic; }
Утилиты для управления жирностью шрифта элемента.
xxxxxxxxxx
font-normal
.font-normal { font-weight: 400; }
export default {
theme: {
fontWeight: {
'hairline': 100,
'extra-light': 100,
'thin': 200,
'light': 300,
'normal': 400,
'medium': 500,
'semibold': 600,
'bold': 700,
'extrabold': 800,
'extra-bold': 800,
'black': 900,
},
},
}
Утилиты для управления вариантом чисел.
xxxxxxxxxx
ordinal
.ordinal { --tw-ordinal: ordinal; --tw-slashed-zero: var(--tw-empty,/*!*/ /*!*/); --tw-numeric-figure: var(--tw-empty,/*!*/ /*!*/); --tw-numeric-spacing: var(--tw-empty,/*!*/ /*!*/); --tw-numeric-fraction: var(--tw-empty,/*!*/ /*!*/); font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction); }
Утилиты дефисов определяют, как слова должны быть расставлены через дефис, когда текст переносится на несколько строк. Он может полностью предотвратить расстановку переносов, переносить перенос в заданные вручную места в тексте или позволить браузеру автоматически вставлять переносы там, где это необходимо.
xxxxxxxxxx
hyphens-auto
.hyphens-auto { -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }
Утилиты для управления отслеживанием (межбуквенным интервалом) элемента.
xxxxxxxxxx
tracking-normal
.tracking-normal { letter-spacing: 0em; }
export default {
theme: {
letterSpacing: {
tightest: '-.075em',
tighter: '-.05em',
tight: '-.025em',
normal: '0',
wide: '.025em',
wider: '.05em',
widest: '.25em',
},
},
}
Утилиты для управления интерлиньяжем (высотой строки) элемента.
xxxxxxxxxx
leading-normal
.leading-normal { line-height: 1.5; }
export default {
theme: {
extend: {
lineHeight: {
'extra-loose': '2.5',
},
},
},
}
Утилиты размера табуляции используются для настройки ширины символов табуляции (U+0009).
xxxxxxxxxx
tab
.tab { -moz-tab-size: 4; -o-tab-size: 4; tab-size: 4; }
export default {
theme: {
tabSize: {
sm: '2',
md: '4',
lg: '8',
},
},
}
Утилиты для контроля выравнивания текста.
xxxxxxxxxx
text-left
.text-left { text-align: left; }
Утилиты для управления цветом текста элемента.
xxxxxxxxxx
text-gray-500
.text-gray-500 { --tw-text-opacity: 1; color: rgba(107, 114, 128, var(--tw-text-opacity)); }
export default {
theme: {
textColor: {
primary: '#3490dc',
secondary: '#ffed4a',
danger: '#e3342f',
},
},
}
Утилиты для управления оформлением текста.
Утилиты для управления типом оформления текста.
xxxxxxxxxx
underline
.underline { -webkit-text-decoration-line: underline; text-decoration-line: underline; }
Утилиты для управления стилем оформления текста.
xxxxxxxxxx
underline-solid
.underline-solid { -webkit-text-decoration-style: solid; text-decoration-style: solid; }
Утилиты для управления цветом оформления текста.
xxxxxxxxxx
underline-green-500
.underline-green-500 { --tw-line-opacity: 1; -webkit-text-decoration-color: rgba(16, 185, 129, var(--tw-line-opacity)); text-decoration-color: rgba(16, 185, 129, var(--tw-line-opacity)); }
export default {
theme: {
textDecorationColor: {
primary: '#3490dc',
secondary: '#ffed4a',
danger: '#e3342f',
},
},
}
Утилиты для управления непрозрачностью цвета оформления элемента.
xxxxxxxxxx
underline-opacity-50
.underline-opacity-50 { --tw-line-opacity: 0.5; }
export default {
theme: {
extend: {
textDecorationOpacity: {
10: '0.1',
20: '0.2',
95: '0.95',
},
},
},
}
Утилиты для управления длиной оформления текста.
xxxxxxxxxx
underline-auto
.underline-auto { text-decoration-thickness: auto; }
export default {
theme: {
extend: {
textDecorationLength: {
sm: '1px',
md: '2px',
lg: '4px',
},
},
},
}
Утилиты для управления смещением оформления текста.
xxxxxxxxxx
underline-offset-auto
.underline-offset-auto { text-underline-offset: auto; }
export default {
theme: {
textDecorationOffset: {
sm: '1px',
md: '2px',
lg: '4px',
},
},
}
Утилиты для управления отступом текста.
xxxxxxxxxx
indent
.indent { text-indent: 1.5rem; }
export default {
theme: {
extend: {
textIndent: {
'4xl': '5rem',
'5xl': '6rem',
},
},
},
}
Утилиты для управления непрозрачностью цвета текста элемента.
xxxxxxxxxx
text-opacity-50
.text-opacity-50 { --tw-text-opacity: 0.5; }
export default {
theme: {
extend: {
textOpacity: {
10: '0.1',
20: '0.2',
95: '0.95',
},
},
},
}
Утилиты для управления тенью текстового элемента.
xxxxxxxxxx
text-shadow-lg
.text-shadow-lg { text-shadow: 3px 3px 6px rgb(0 0 0 / 26%), 0 0 5px rgb(15 3 86 / 22%); }
export default {
theme: {
textShadow: {
'DEFAULT': '0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)', // If a DEFAULT shadow is provided, it will be used for the non-suffixed shadow utility.
'2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',
'3xl': '0 35px 60px -15px rgba(0, 0, 0, 0.3)',
},
},
}
Утилиты для управления обводкой текстового элемента.
Утилиты для управления шириной обводки текста.
xxxxxxxxxx
text-stroke-md
.text-stroke-md { -webkit-text-stroke-width: medium; }
export default {
theme: {
extend: {
textStrokeWidth: {
'xl': '6',
'2xl': '8',
},
},
},
}
Утилиты для управления цветом обводки текста.
xxxxxxxxxx
text-stroke-blue-500
.text-stroke-blue-500 { --tw-text-stroke-opacity: 1; -webkit-text-stroke-color: rgba(59, 130, 246, var(--tw-text-stroke-opacity)); }
export default {
theme: {
textStrokeColor: {
primary: '#3490dc',
secondary: '#ffed4a',
danger: '#e3342f',
},
},
}
Утилиты для управления преобразованием текста.
uppercase
.uppercase { text-transform: uppercase; }
Утилиты для управления переполнением текста в элементе.
xxxxxxxxxx
truncate
.truncate { overflow: hidden; -o-text-overflow: ellipsis; text-overflow: ellipsis; white-space: nowrap; }
Утилиты для управления вертикальным выравниванием встроенного поля или поля таблицы-ячейки.
xxxxxxxxxx
align-baseline
.align-baseline { vertical-align: baseline; }
Утилиты для управления свойством пустого пространства элемента.
xxxxxxxxxx
whitespace-normal
.whitespace-normal { white-space: normal; }
Утилиты для управления разрывами слов в элементе.
xxxxxxxxxx
break-normal
.break-normal { word-break: normal; overflow-wrap: normal; }
Утилита writing-mode
устанавливает, будут ли строки текста располагаться по горизонтали или вертикали, а также направление, в котором происходит прогресс блоков. При установке для всего документа он должен быть установлен в корневом элементе (элемент html для документов HTML).
xxxxxxxxxx
write-vertical-right
.write-vertical-right { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
Утилита writing-orientation
устанавливает ориентацию текстовых символов в строке. Это влияет только на текст в вертикальном режиме (когда writing-mode
не horizontal-tb
). Это полезно для управления отображением языков, использующих вертикальный сценарий, а также для создания заголовков вертикальных таблиц.
xxxxxxxxxx
write-orient-mixed
.write-orient-mixed { -webkit-text-orientation: mixed; text-orientation: mixed; }