css - Next.js 全局 CSS 接管了 module.css

标签 css reactjs css-selectors css-modules react-css-modules

我制作了一个组件和一个 module.css,因为与我元素的其他输入相比,它具有特定 CSS 样式的输入。

这就是为什么我在全局 CSS 中为我​​的组件中的所有输入设置了输入样式。

我用 module.css 制作了几个组件,到目前为止,一切正常,但对于这个特定组件,我不知道为什么,module.css 没有应用,而是全局 CSS。

我的组件:

import React, { useState } from "react";
import style from "./searchBar.module.css";

const SearchBar = () => {
  const [city, setCity] = useState("");
  return (
    <form className={style.searchBar}>
      <div>
        <label>Ville</label>
        <input
          type="text"
          name="city"
          placeholder="Où veux-tu jouer?"
          value={city}
          onChange={(e) => {
            setCity(e.target.value);
          }}
        />
      </div>
      <div>
        <label>Sport</label>
        <input />
      </div>
      <div>
        <label>Nom</label>
        <input />
      </div>
      <div>
        <label>Type</label>
        <select></select>
      </div>
      <button>Rechercher</button>
    </form>
  );
};

export default SearchBar;

CSS 模块:

.searchBar {
  margin: 0 auto;
  border: 1px solid var(--grey);
  width: 74.37%; /*  937px;  */
  height: 14.91%; /*  72px; */
  background-color: #fff;
  border-radius: 42px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 8px;
}

.searchBar input {
  width: 100px;
  height: 50px;
}

在下面的屏幕截图中,您可以看到应用了全局 CSS 而不是 module.css。我错过了什么或做错了什么?

screen

最佳答案

是因为CSS specificity . searchBar.module.css 中的选择器的特异性低于全局 CSS 中的选择器。

// 0 ids, 2 attributes, 1 element
// specificity is 21
input:not([type="checkbox"]):not([type="radio"])

/// 0 ids, 1 class name, 1 element
// specificity is 11
.searchBar_searchBar__5Kgde input

您需要更改其中一个,例如在此处添加属性应该有所帮助:.searchBar_searchBar__5Kgde input[type="text"]。但是您可能应该改为修复全局 CSS。

关于css - Next.js 全局 CSS 接管了 module.css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65720958/

相关文章:

CSS 边框图像左侧和边框图像底部或 2 个背景

javascript - IE8强制使用兼容性 View 刷新网页

css - 如何在 Foundation 中垂直对齐 Logo 和菜单?

javascript - React-leaflet:如何调用像resetStyle这样的GeoJson方法?

jquery - 选择没有文本兄弟的内联元素

javascript - 取决于媒体查询的通用参数

javascript - React中无状态组件中如何设置State、多个对象值?

node.js - 在 Node 和 React 中的何处添加有关我的代码的作者身份/版权信息?

java - :first/:first-child doesn't seem to work with Selenium 2

css - 选择一个没有某个类的子元素的元素