実現したいこと
rem 単位を使って、どのブラウザ幅でも適切にレスポンシブ対応するサイトを作る方法
発生している問題・分からないこと
参考サイト:https://comone.thers.ac.jp/
上記の参考サイトのようにcssのサイズ指定の単位をremにして、レスポンシブ対応の設計を行いたいです。
別記のコードのようにCSSに記載して試してみましたが、ブラウザ幅を変えてもフォントサイズが変わりませんでした。HTMLとCSSだけでは制御が効かないのでしょうか。
Jsなどでブラウザ幅の取得などが必要なのでしょうか?
実際のコードを見ていると、ブラウザ幅を変えるたび、例えば画面幅463pxにするとHTMLに(style="--vw: 463px")のようにブラウザの幅を指定しています。これがないため、フォントサイズが変わらないのかとおもっているのですが、認識はあっていますでしょうか?
ブラウザ幅はJsで取得しているのかと思うのですが、該当のコードが見つけられません。ただコードを記載して制御しているのか、それともライブラリなども入れているのでしょうか...?
また、他のサイトでもよくこの動き(style="--vw: 463px")のような記載があるHTMLを見かけるのですが、今の主流でしょうか?
今回の質問の意図としては、柔軟にサイト制作をできるようになりたいと勉強中なのですが、普段はpxとvwを使ってメディアクエリでレスポンシブ対応しています。これだけでしか対応できないため、最近主流のremをつかっての正しい実装をできるようになりたいと勉強中のところです。
たくさんの質問で大変恐縮ではございますが、ご教授いただけますと幸いです。
該当のソースコード
:root { --base-vw: 375; --vw: 375px; --f-en: ; --c-black: #000; --c-white: #fff; } @media screen and (min-width: 767px) { :root { --base-vw: 1440; --vw: 1440px; } } html { font-size: 1px; font-size: calc(var(--vw) / var(--base-vw)); } body { font-family: "Noto Sans JP", sans-serif; font-size: 16rem; font-weight: 400; color: var(--c-black); }
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
html {
font-size: 1px;
font-size: calc(var(--vw) / var(--base-vw));
}
body {
font-size: 16rem;
}
上記のように指定したが、フォントサイズが何も変わらなかった。
補足
特になし

回答2件
あなたの回答
tips
プレビュー