Next.js - Suporte CSS
Em Next.js, podemos usar a biblioteca css-in-js embutida chamada styled-jsx. Ele permite escrever css dentro de um componente react e esses estilos terão como escopo o componente.
Neste exemplo, criaremos um objeto Container que será usado para estilizar outros componentes, contendo-os.
Vamos atualizar o projeto nextjs usado no capítulo Meta Dados .
Primeiro crie um diretório de componentes no nível raiz e adicione um arquivo container.module.css da seguinte maneira -
.container {
max-width: 36rem;
padding: 0 1rem;
margin: 3rem auto 6rem;
border: 1px solid red;
}
Crie o arquivo container.js no diretório Componentes
import styles from './container.module.css'
function Container({ children }) {
return <div className={styles.container}>{children}</div>
}
export default Container
Agora use o componente Container em first.js.
import Link from 'next/link'
import Head from 'next/head'
import Container from '../../components/container'
export default function FirstPost() {
return (
<>
<Container>
<Head>
<title>My First Post</title>
</Head>
<h1>My First Post</h1>
<h2>
<Link href="/">
<a>Home</a>
</Link>
</h2>
</Container>
</>
)
}
Inicie o servidor Next.js
Execute o seguinte comando para iniciar o servidor -.
npm run dev
> [email protected] dev \Node\nextjs
> next
ready - started server on http://localhost:3000
event - compiled successfully
event - build page: /
wait - compiling...
event - compiled successfully
event - build page: /next/dist/pages/_error
wait - compiling...
event - compiled successfully
Verificar saída
Abra localhost: 3000 em um navegador e vá para a primeira postagem, você verá a seguinte saída.