em & rem


em & rem


そうたいはんのうユニット
  • デフォルトでは、ブラウザがHTMLに割り当てるフォントサイズは16pxです.
  • なぜ使いますか。


  • フォントサイズをpxのみで表すと、コンテナのサイズが変化すると内容は変化しません.

  • また、ユーザーがブラウザでフォントサイズの設定を変更した場合、ユーザーはまったく反応しません.
  • em


  • 現在フォント印刷で指定されているポイントサイズの単位を表します.
  • em単位を使用する親要素のfont-size属性値に基づいています.
  • <div class = "parent">
        Parent
        <div class="child">Child</div>
    </div>
    .parent{
        font-size : 8em; 
    }
    
    .child{
        font-size : 0.5em;
    }

  • 一番上の「デフォルトでは、ブラウザがHTMLに割り当てるフォントサイズは16pxです.」はい.

  • つまり、デフォルトでは、ユーザーがHTMLまたはbodyにフォントサイズを指定しない限り、16pxとして指定されます.

  • 親要素の8 emは、HTMLの親要素HTMLの16px * 8 を計算する値です.(親は128 px)

  • 親のchildは、親(parent=128 px)の0.5倍64pxである.
  • rem

  • remのrはルートを表す.

  • トップレベル要素のfont-size属性値に基づいて、トップレベル要素はhtmlタグです.
  • <div class = "parent">
        Parent
        <div class="child">Child</div>
    </div>
    .parent{
        font-size : 8rem; 
    }
    
    .child{
        font-size : 0.5rem;
    }

  • parentは、HTMLでデフォルトで指定されている16ピクセルの8倍128pxであるルート要素です.

  • childはルート要素であり、8pxHTMLでデフォルトで指定された16画素に0.5倍を乗じたものを計算します.
  • 整理する

  • em親要素の相対的なサイズを決定します.
  • remルート要素の相対的なサイズを決定します.
  • リファレンス

  • https://www.daleseo.com/css-em-rem/
  • https://medium.com/watcha/watcha-%EA%B0%9C%EB%B0%9C-%EC%A7%80%EC%8B%9D-px-em-rem-f569c6e76e66
  • https://www.youtube.com/watch?v=7Z3t1OWOpHo&list=PLv2d7VI9OotQ1F92Jp9Ce7ovHEsuRQB3Y&index=21