Tailwind CSS v4: стили Tailwind.config.js не применяются после обновления с версии 3CSS

Разбираемся в CSS
Ответить
Anonymous
 Tailwind CSS v4: стили Tailwind.config.js не применяются после обновления с версии 3

Сообщение Anonymous »

Недавно я обновил свой проект с Tailwind CSS v3 до v4 и использую Next.js 16.0.8 с Tailwindcss ^4.0.0. В версии 3 я в значительной степени полагался на Tailwind.config.js для настройки цветов, размеров шрифта, интервалов и расширений темы. После обновления эти стили больше не применяются, поскольку в Tailwind v4 удален традиционный файл конфигурации. Как правильно перенести или повторно применить эти значения конфигурации v3 в Tailwind v4?
это мой файл main.css в версии v4:
/*! tailwindcss-build-file - DO NOT REMOVE THIS COMMENT. It is used in /scripts/run-after-build.js */
/**
* MAIN CSS ENTRY POINT - Tailwind CSS v4
*
* This file is the single source of truth for all styles.
* Import order matters!
*/

/* ==========================================================================
0. EXTERNAL FONTS (must be first @import per CSS spec)
Google Fonts imports for fonts not supported by next/font

TODO [TECH-DEBT]: Next.js 16 Upgrade - Remove Fustat import
Remove this import once Fustat is migrated to next/font/google
See public/fonts/zld.js for migration instructions
========================================================================== */
@import url('https://fonts.googleapis.com/css2?famil ... splay=swap');

/* ==========================================================================
1. TAILWIND CSS v4
========================================================================== */
@import 'tailwindcss';

/* ==========================================================================
2. TOKEN SYSTEM
Primitives → Semantic → Theme Overrides
========================================================================== */
@import './tokens/semantic.css';
@import './tokens/themes/zld.css';
@import './tokens/themes/muv.css';

/* ==========================================================================
3. COMPONENT STYLES
Legacy component utilities - migrate to semantic tokens incrementally
========================================================================== */
@import './style.css';

/* ==========================================================================
4. TAILWIND v4 SOURCE DETECTION
Tell Tailwind where to scan for classes
========================================================================== */
@source "../components/**/*.{js,ts,jsx,tsx}";
@source "../src/**/*.{js,ts,jsx,tsx}";
@source "../app/**/*.{js,ts,jsx,tsx}";
@source "../pages/**/*.{js,ts,jsx,tsx}";

.footer-nav-section details > summary::-webkit-details-marker {
display: none;
}
.footer-nav-section details > summary::marker {
content: '';
}
.footer-nav-section details > summary {
-webkit-appearance: none;
appearance: none;
list-style: none;
}

tailwind.config.js:
const plugin = require('tailwindcss/plugin')
const colors = require('./tailwindcolors')

module.exports = {
content: [
'./components/**/*.{js,ts,jsx,tsx,mdx}',
'./src/**/*.{js,ts,jsx,tsx,mdx}',
'./app/**/*.{js,ts,jsx,tsx,mdx}',
'./pages/**/*.{js,ts,jsx,tsx}',
'./safelist.txt',
'./safelist/**/*.{js,ts,jsx,tsx,mdx,html}',
'./public/global**.{js,ts,jsx,tsx}',
'./data/*.js'
],
theme: {
colors: {
...colors
},
fontSize: {
xs: ['var(--text-size-xs)', '150%'],
sm: ['var(--text-size-sm)', '150%'],
base: ['var(--text-size-base)', '150%'],
lg: ['var(--text-size-lg)', '140%'],
xl: ['var(--text-size-xl)', '140%'],
'2xl': ['var(--text-size-2xl)', '130%'],
'3xl': ['var(--text-size-3xl)', '120%'],
'4xl': ['var(--text-size-4xl)', '120%'],
'5xl': ['var(--text-size-5xl)', '120%'],
'6xl': ['var(--text-size-6xl)', '120%'],
'7xl': ['var(--text-size-7xl)', '120%'],
'8xl': ['var(--text-size-8xl)', '120%'],
'9xl': ['var(--text-size-9xl)', '120%']
},
fontFamily: {
body: 'var(--font-body)',
heading: 'var(--font-heading)',
graphic: 'var(--font-graphic)'
},
screens: {
sm: '576px',
md: '768px',
lg: '1024px',
xl: '1200px',
'2xl': '1400px'
},
extend: {
borderRadius: {
none: 'var(--rounded-none)',
sm: 'var(--rounded-sm)',
DEFAULT: 'var(--rounded)',
lg: 'var(--rounded-lg)',
xl: 'var(--rounded)',
full: 'var(--rounded-full)'
},
backgroundImage: {
clouds: "url('/assets/images/labor-day/cloud.jpeg')"
},
fontWeight: {
thin: '300',
hairline: '300',
extralight: '300',
light: '300',
normal: '400',
medium: '500',
semibold: '600',
bold: '700',
extrabold: '700',
'extra-bold': '700'
},
animation: {
fadeout: 'fadeOut 1s linear',
fadein: 'fadeIn 1s linear',
slidertimer: 'sliderTimer 8s linear',
marquee: 'marquee 25.25s linear infinite',
marquee2: 'marquee2 25.25s linear infinite'
},
keyframes: {
fadeOut: {
'0%': {opacity: '1'},
'100%': {opacity: '0'}
},
fadeIn: {
'0%': {opacity: '0'},
'100%': {opacity: '1'}
},
sliderTimer: {
'0%': {width: '0%'},
'100%': {width: '100%'}
},
marquee: {
'0%': {transform: 'translateX(0)'},
'100%': {transform: 'translateX(-100%)'}
},
marquee2: {
'0%': {transform: 'translateX(100%)'},
'100%': {transform: 'translateX(0)'}
}
}
}
},
plugins: [
plugin(function ({addBase, theme}) {
addBase({
button: {borderColor: '#333'}
})
})
],
variants: {
extend: {
fontWeight: ['hover']
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/798 ... ng-from-v3
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «CSS»