Como Funcionam os Estilos Inline no React?

No React, estilos inline são usados para aplicar estilos CSS diretamente aos elementos React dentro do seu código JSX em vez de defini-los em arquivos CSS separados. A abordagem do React para estilos inline envolve o uso de objetos JavaScript para definir estilos, em vez de strings CSS tradicionais. Isso significa que, em vez de escrever estilos como você faria em um arquivo CSS, você cria um objeto JavaScript onde as chaves são versões camel case dos nomes das propriedades CSS e os valores são as strings dos valores CSS. Aqui está um exemplo de como você pode usar estilos inline para um componente Button:
function Button({ buttonText }) {
  const defaultStyles = {
    backgroundColor: "#007BFF",
    color: "white",
    border: "none",
    borderRadius: "4px",
    padding: "10px 20px",
    fontSize: "16px",
    fontWeight: "bold",
    cursor: "pointer",
    transition: "background-color 0.3s ease",
  };

  return <button style={defaultStyles}>{buttonText}</button>;
}
Neste exemplo, definimos um objeto de estilo chamado defaultStyles. Aplicamos então esses estilos a um elemento button usando o atributo style. React cuida de aplicar esses estilos ao elemento quando ele renderiza. Você também pode optar por passar um objeto diretamente para o atributo style. Aqui está como um exemplo revisado ficaria:
function Button({ buttonText }) {
  return (
    <button
      style={{
        backgroundColor: "#007BFF",
        color: "white",
      }}
    >
      {buttonText}
    </button>
  );
}
Observe as chaves duplas {{}} no atributo style. As chaves externas indicam uma expressão JavaScript em JSX, enquanto as chaves internas definem um literal de objeto JavaScript. Essa sintaxe permite que você incorpore objetos JavaScript diretamente nos atributos JSX. Às vezes você pode querer passar um objeto diretamente se houver apenas algumas propriedades como mostrado aqui. Caso contrário, passar um nome para um objeto seria melhor como no primeiro exemplo. É importante notar que, embora os nomes das propriedades CSS geralmente sejam escritos em kebab case, como font-size, nos estilos inline do React usamos camel case, como fontSize. Isso ocorre porque o objeto style é um objeto JavaScript e nomes em kebab case não são válidos como chaves de objeto em JavaScript sem usar aspas. Uma grande vantagem dos estilos inline no React é que eles suportam estilização dinâmica baseada no estado de um componente ou nas props. Por exemplo:
function DynamicButton({ isActive }) {
  const buttonStyles = {
    backgroundColor: isActive ? "green" : "red",
    color: "white",
    padding: "10px 15px",
    border: "none",
    cursor: "pointer",
  };

  return <button style={buttonStyles}>Login</button>;
}
Neste exemplo, a cor de fundo do botão muda com base na prop isActive. Esse tipo de estilização dinâmica pode ser poderoso para criar interfaces de usuário interativas e responsivas. Em resumo, estilos inline em React oferecem uma maneira poderosa de aplicar e manipular estilos diretamente dentro dos seus componentes. Eles usam objetos JavaScript em vez de strings CSS, exigem nomes de propriedades em camel case e podem facilmente incorporar valores dinâmicos. Eles são uma ferramenta essencial no kit de ferramentas de um desenvolvedor React, especialmente para criar interfaces de usuário altamente personalizadas e interativas.
Este módulo não possui perguntas. Marque como concluído.