使用.modules时不应用样式的问题。在Next.js中
P粉504080992
P粉504080992 2023-08-02 20:50:39
[CSS3讨论组]
<p>我启动了一个Next.js 13应用程序,<br /><br />我有一个main.modules. css文件</p><p><code></code></p> <pre class="brush:php;toolbar:false;">.heading { font-size: 4rem; color: #000; } .dark .heading { color: #fff; }</pre> <p>我使用它来为这样的组件设置样式</p> <pre class="brush:php;toolbar:false;">import styles from "@/styles/main.module.scss"; export default function Home() { return ( &lt;&gt; &lt;Header /&gt; &lt;h1 className={styles["heading"]}&gt;Hi! I was styled by scss&lt;/h1&gt; &lt;/&gt; ); }</pre> <p>来自。heading类的样式被正确应用,但来自。dark .heading的属性没有。<br /><br />我的主题提供程序确实向HTML元素添加了一个。dark类。<br /><br />我使用了一个普通的。scss文件,并应用了一个类似这样的类</p><p><br /></p> <pre class="brush:php;toolbar:false;">&lt;h1 className="heading"&gt;Hi! I was styled by scss&lt;/h1&gt;</pre> <p>然后它工作得很好</p>
P粉504080992
P粉504080992

全部回复(2)
P粉111227898

你可以尝试使用样式。标题。< h1 className = {styles.heading} >你好!我的样式是scss</h1>

P粉787806024

你可以使用:global来声明你正在使用一个全局类

所以main。modules。scss将变成

.heading {
    font-size: 4rem;
    color: #000;
}

:global(.dark) .heading {
    color: #fff;
}

为什么会这样呢?

为什么会这样呢?
CSS模块的作用域是它们所使用的组件。

这意味着默认情况下。dark选择器会被编译,并且不会引用全局的。dark类。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号