'How to change CSS of a child component from parent component

I have a react component called TeamBanner like so

import styles from "./teamBanner.module.css";
import { useNavigate } from "react-router-dom";
import { TeamBannerProps } from "../ProjectTypes.types";

export const TeamBanner = ({
  team,
  onBannerClick,
  showName,
}: TeamBannerProps) => {
  let navigate = useNavigate();
  const handleOnClick = () => {
    navigate(`/${team}`);
    onBannerClick();
  };

  return (
    <div
      className={`${styles.container} flex theme-light ${
        showName ? "" : styles["no-name"]
      }`}
      title={team}
      onClick={handleOnClick}
    >
      <div>
        <img
          src={require(`../logos/${team}.svg`)}
          alt="logo"
          className={`${styles.logo} ${showName ? "" : styles["only-logo"]}`}
        />
      </div>
      {showName ? team : ""}
    </div>
  );
};

The teamBanner.module.css file is like so

.container {
  margin: 0.25em;
  align-items: center;
  cursor: pointer;
  top: 0;
  z-index: 2;
  background-color: hsl(var(--color-background));
  padding: 0.1em 0.25em;
  border-radius: 0.5em;
  box-shadow: 0.05rem 0.05rem 0.2rem rgb(0 0 0 / 50%);
  font-family: var(--ff-serif);
  font-size: var(--fs-200);
}
.logo {
  display: inline-block;
  vertical-align: middle;
  width: 3vmax;
  height: 3vmax;
}
.container:hover {
  outline: 0.15em solid hsl(240, 90%, 67%);
}

.no-name {
  border-radius: 0.25em;
}

.only-logo {
  width: 5vmax;
  height: 5vmax;
}

I am using it to create a list of team of a page & this works just fine.

However, I want to use it in another place also. In the place, the to now want the .container:hover effect & I want the font properties of the .contaner and width & height properties of the .logo changed.

How can I accomplish this? only changing these items of the module.css? Can any one help? Thanks



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source