React Basics~komponen penggayaan/ css_ dalam _ js

Barbara Streisand
Lepaskan: 2024-10-09 22:47:28
asal
339 orang telah melayarinya
  • Jika kita ingin menulis gaya sebagai gaya css dalam fail javascript, kita boleh menggunakan komponen gaya.

  • Kita perlu memasang komponen gaya dengan arahan seperti npm i styled-components.

・src/Example.js

iimport { useState } from "react";
import styled from "styled-components";

const StyledButton = styled.button`
  margin: auto;
  border-radius: 9999px;
  border: none;
  display: block;
  width: 120px;
  height: 60px;
  font-weight: bold;
  cursor: pointer;
  background: ${({ isSelected }) => (isSelected ? "pink" : "")};

  @media (max-width: 600px) {
    border-radius: 0;
  }
`;

const OrangeButton = styled(StyledButton)`
  background: orange;

  :hover {
    color: red;
    opacity: 0.7;
  }

  span {
    font-size: 2em;
  }
`;

const Example = () => {
  const [isSelected, setIsSelected] = useState(false);

  const clickHandler = () => setIsSelected((prev) => !prev);

  return (
    <>
      <StyledButton isSelected={isSelected} onClick={clickHandler}>
        StyledButton
      </StyledButton>

      <OrangeButton isSelected={isSelected} onClick={clickHandler}>
        <span>OrangeButton</span>
      </OrangeButton>

      <div style={{ textAlign: "center" }}>{isSelected && "Clicked!"}</div>
    </>
  );
};

export default Example;

Salin selepas log masuk
  1. Kita perlu menetapkan komponen yang digayakan sebagai elemen yang digayakan.
    Ini adalah contoh.
    const StyledButton = styled.button
    //gaya
    ;.

  2. Kita boleh menghantar prop kepada komponen gaya seperti ini.
    daripada:
    kepada: latar belakang: ${({ isSelected }) => (isSelected ? "pink" : "")};

  3. Kami boleh menetapkan pertanyaan media dalam komponen gaya seperti ini
    @media (lebar maksimum: 600px) {
    jejari sempadan: 0;
    }

  4. Kami boleh melaksanakan gaya lain dalam komponen gaya seperti ini.
    const OrangeButton = digayakan(StyledButton)

  5. Kita boleh menetapkan elemen pseudo dalam komponen gaya seperti ini.
    :tuding {
    warna: merah;
    kelegapan: 0.7;
    }

・Butang biasa(Butang kelabu) sebelum kliekd.
React Basics~styling component/ css_ in _ js

・Butang biasa (butang merah jambu) selepas kliekd.
React Basics~styling component/ css_ in _ js

・Butang oren sebelum kliekd.
React Basics~styling component/ css_ in _ js

・Butang oren selepas kliekd.
React Basics~styling component/ css_ in _ js

Atas ialah kandungan terperinci React Basics~komponen penggayaan/ css_ dalam _ js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan