Stilizzazione Avanzata dei Componenti in React

Supponiamo di avere un componente React Block e di aver creato al suo interno componenti stilizzati utilizzando Styled Components Button e Container:

Block.jsconst Container = styled.div`
  display: flex;
  flex-direction: column;
  width: 150px;
`;

const Button = styled.input`
  background-color: orange;
  font-size: 18px;
  margin: 5px;
`;

Ora immaginiamo di aver bisogno di un altro componente Button, ma con testo bianco e sfondo verde.

Per fare ciò, è sufficiente creare un nuovo componente MdButton basato sul nostro componente Button e specificare solo le proprietà che vogliamo modificare:

Block.jsconst MdButton = styled(Button)`
  color: white;
  background-color: green;
`;

Posizioniamo tutti i nostri componenti stilizzati in Block:

jsxfunction Block() {
  return (
    <Container>
      <Button>btn0</Button>
      <MdButton>btn1</MdButton>
    </Container>
  );
}
Задание 1

Crea un componente React vuoto Block1. Utilizzando Styled Components crea al suo interno un div stilizzato con larghezza e altezza di 150px, sfondo giallo, e larghezza del bordo di 2px, nominalo DIVA.

Задание 2

Basandoti sul div del task precedente, crea un div identico DIVB, ma con sfondo verde e larghezza del bordo di 3px.

Задание 3

In Block1 crea un div Container. Al suo interno posiziona due componenti DIVA e tra di loro un componente DIVB, creati da te nei task precedenti di questa lezione.