CSS-in-JSライブラリの使い方
既存のCSS-in-JSソリューションを使用することができます。最もシンプルなものはインラインスタイルです:
function HiThere() {
return <p style={{ color: 'red' }}>hi there</p>
}
export default HiTherestyled-jsxをバンドルしており、スコープ付きCSSの分離サポートを提供しています。 目的は、Web Componentsに似た「shadow CSS」をサポートすることですが、残念なことにWeb ComponentsはサーバーレンダリングをサポートしておらずJS専用です。
その他の一般的なCSS-in-JSソリューション(Styled Componentsなど)については、上記の例を参照してください。
styled-jsxを使用するコンポーネントは次のようになります:
function HelloWorld() {
return (
<div>
Hello world
<p>scoped!</p>
<style jsx>{`
p {
color: blue;
}
div {
background: red;
}
@media (max-width: 600px) {
div {
background: blue;
}
}
`}</style>
<style global jsx>{`
body {
background: black;
}
`}</style>
</div>
)
}
export default HelloWorld詳細については、styled-jsxドキュメントを参照してください。
JavaScriptの無効化
JavaScriptを無効にした場合でも、本番ビルド(next start)ではCSSは読み込まれます。開発時は、Fast Refreshにより最高の開発者体験を提供するために、JavaScriptを有効にする必要があります。