You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地无法覆盖Nuxt/Tailwind媒体查询CSS问题排查

Nuxt UI Pro PageColumns 组件列布局优先级问题

我想要覆盖 Nuxt UI Pro 的 PageColumns 组件 CSS 媒体查询,在大屏设备上给 <UPageColumns> 元素添加 class="lg:columns-2" 实现2列布局,代码如下:

<UPageColumns class="lg:columns-2">
  <UPageCard v-for="(foo, index) in [1, 2, 3, 4]" :key="index">
    <div>
      Hello
      {{ foo }}
    </div>
  </UPageCard>
</UPageColumns>

本地环境下该设置不生效,但在 StackBlitz 中可正常实现预期的2列布局,暂未发现本地环境与 StackBlitz 的差异。我下载了 Nuxt UI Pro Starter Template,执行npm install后将上述代码粘贴到index.vue中,本地会显示3列而非2列。

有趣的是,本地修改大屏设备的其他列数均可生效,仅lg:columns-2会被lg:columns-3覆盖。两张截图显示应用了完全相同的类,但本地环境中3列样式优先级更高:

本地显示3列
StackBlitz显示2列

更新

该问题似乎是CSS优先级问题,可通过使用[&:]重复选择器的方式缓解,修改后的代码如下:

<UPageColumns class="[&]:lg:columns-2">
  <UPageCard v-for="(foo, index) in [1, 2, 3, 4]" :key="index">
    <div>
      Hello
      {{ foo }}
    </div>
  </UPageCard>
</UPageColumns>

内容的提问来源于stack exchange,提问作者exeC13

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 17:42:11