smDownは、「small」と「down」を組み合わせたもので、画面幅が小さい場合に適用されることを意味します。具体的な使い方としては、以下のようになります。
-
必要なパッケージのインポート:
import { useTheme, useMediaQuery } from '@material-ui/core';
-
コンポーネント内での使用:
const theme = useTheme(); const isSmallScreen = useMediaQuery(theme.breakpoints.down('sm')); // スタイルの適用例 const styles = { container: { backgroundColor: isSmallScreen ? 'red' : 'blue', // 他のスタイルプロパティ }, };
この例では、useTheme
とuseMediaQuery
を使って、現在のテーマと画面幅に関する情報を取得しています。useMediaQuery
の引数には、theme.breakpoints.down('sm')
を指定しています。これにより、画面幅がsm(スモール)ブレークポイント以下の場合に真となるisSmallScreen
変数が得られます。
その後、スタイルオブジェクト内でisSmallScreen
を使用して条件付きのスタイルを適用しています。上記の例では、画面幅が小さい場合に背景色を赤に設定し、それ以外の場合は青に設定しています。
このように、smDownを使用することで、Material-UIのコンポーネントやスタイルに特定のブレークポイント以下の場合にのみ適用するロジックを簡単に実装することができます。応用すれば、さまざまなレスポンシブデザインの要件に対応することができます。