useCssCascadeLayers not adding @layer blocks #11700
-
|
Reading the plugin docs for Css Cascade Layers enabling
Output:
Note:
Config: /** @type {import('@docusaurus/types').DocusaurusConfig} */
module.exports = {
title: 'Component Library',
tagline: 'A home for your component needs',
url: 'https://example.com',
baseUrl: '/',
onBrokenLinks: 'throw',
favicon: 'img/favicon.svg',
markdown: {
hooks: {
onBrokenMarkdownLinks: 'warn',
},
},
organizationName: 'my-org',
projectName: 'component-library',
future: {
experimental_faster: true, // Originally not set
v4: {
useCssCascadeLayers: true,
removeLegacyPostBuildHeadAttribute: true, // Originally not set
},
},
presets: [
[
'@docusaurus/preset-classic',
{
docs: {
sidebarPath: require.resolve('./sidebars.js'),
// Please change this to your repo.
editUrl: 'https://github.com/my-org/component-library',
remarkPlugins: [[require('@docusaurus/remark-plugin-npm2yarn'), { sync: true }]],
sidebarCollapsible: false,
},
theme: {
customCss: require.resolve('./src/css/custom.css'),
},
},
],
],
plugins: [
'@docusaurus/theme-live-codeblock',
'docusaurus-plugin-sass',
[
'@docusaurus/plugin-content-docs',
{
id: 'docs-mobile',
path: 'docs-mobile',
routeBasePath: 'docs-mobile',
sidebarPath: require.resolve('./sidebars-mobile.js'),
},
],
function aliasPlugin() {
return {
name: 'react-native-web-alias',
configureWebpack() {
return {
resolve: {
alias: {
'react-native': 'react-native-web',
'react-native-svg': 'react-native-svg-web',
},
},
};
},
};
},
],
themeConfig: {
liveCodeBlock: {
playgroundPosition: 'bottom',
},
navbar: {
title: 'Component Library',
logo: {
alt: 'Logo',
src: 'img/logo.svg',
},
items: [
{
href: '/docs/intro',
position: 'left',
label: 'Web',
},
{
href: '/docs-mobile/intro',
position: 'left',
label: 'Mobile',
},
{
href: '/about',
label: 'About',
position: 'left',
},
{
href: 'https://github.com/my-org/component-library',
label: 'GitHub',
position: 'right',
},
],
},
footer: {
links: [
{
title: 'Community',
items: [
{
label: 'Documentation',
href: 'https://example.com/docs',
},
],
},
{
title: 'More',
items: [
{
label: 'GitHub',
href: 'https://github.com/my-org/component-library',
},
],
},
],
copyright: `Made with 💖 by the UI Team.`,
},
},
};
Additional troubleshooting
❯ yarn list --depth=1 | rg "@docusaurus/.*"
├─ @docusaurus/babel@3.9.2
├─ @docusaurus/bundler@3.9.2
├─ @docusaurus/core@3.9.2
├─ @docusaurus/cssnano-preset@3.9.2
├─ @docusaurus/faster@3.9.2
├─ @docusaurus/logger@3.9.2
├─ @docusaurus/mdx-loader@3.9.2
├─ @docusaurus/module-type-aliases@3.9.2
├─ @docusaurus/plugin-content-blog@3.9.2
├─ @docusaurus/plugin-content-docs@3.9.2
├─ @docusaurus/plugin-content-pages@3.9.2
├─ @docusaurus/plugin-css-cascade-layers@3.9.2
├─ @docusaurus/plugin-debug@3.9.2
├─ @docusaurus/plugin-google-analytics@3.9.2
├─ @docusaurus/plugin-google-gtag@3.9.2
├─ @docusaurus/plugin-google-tag-manager@3.9.2
├─ @docusaurus/plugin-sitemap@3.9.2
├─ @docusaurus/plugin-svgr@3.9.2
├─ @docusaurus/preset-classic@3.9.2
├─ @docusaurus/remark-plugin-npm2yarn@3.9.2
├─ @docusaurus/theme-classic@3.9.2
├─ @docusaurus/theme-common@3.9.2
├─ @docusaurus/theme-live-codeblock@3.9.2
├─ @docusaurus/theme-search-algolia@3.9.2
├─ @docusaurus/theme-translations@3.9.2
├─ @docusaurus/types@3.9.2
├─ @docusaurus/utils-common@3.9.2
├─ @docusaurus/utils-validation@3.9.2
├─ @docusaurus/utils@3.9.2
❯ yarn why postcss
yarn why v1.18.0
=> Found "postcss@8.5.6"❯ yarn why css-loader
=> Found "css-loader@6.11.0" |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 4 replies
-
|
Can you please create a minimal runnable repro we could inspect using docusaurus.new ? Our init template has CSS cascade layers: https://tutorial.docusaurus.io/ If you don't, there must be something on your site that breaks it. |
Beta Was this translation helpful? Give feedback.



I spent some time removing everything I could from my code and the starter template until I found the culprit.
My package.json was missing this:
It looks like it was deleted by someone cleaning up our dependencies 😅. It makes sense we need to target recent browsers supporting Cascade Layers but I would expected a warning or something.