• rem与em的使用和区别


    区别是:浏览器根据谁来转化成px值。

    当使用rem单位,转换为像素大小取决于根元素的字体大小,即HTML元素的字体大小。 

    有一个比较普遍的误解,认为em单位是相对于父元素的字体大小。事实上,根据W3C标准,

    它们是相对于使用em单位的元素的字体的大小。

    父元素的字体大小可以影响 em 值,但这种情况的发生,纯粹是因为继承

    em单位的继承效果:

      使用em单位存在继承的时候,每个元素将自动继承其父元素的字体大小,继承的效果只能被明确的字体单位覆盖,比如px和vw

    只要父级元素上面一直有font-size为em单位,则会一直继承但假如自己设置了font-size的单位为px的时候,则会直接使用自己的px单位的值

     

    em继承的例子:

      如果我们的根元素字体大小为16px(通常是默认值),一个子元素div里面padding值为1.5em,该div将从父元素继承16px。因此padding会翻译成24px,即1.5 x 16 = 24px。

    看图说话。padding:24

      如果我们多加一个div2来包裹原来的div,然后设置其字体大小为1.25em呢?

      我们的div2继承根元素字体大小16px,并乘以他的1.25rem的字体大小。这将设置div2字体大小为 1.25 x 16 = 20px

      !!!现在我们最初的那个div,不再直接从根元素继承那个16px,而是继承包裹着它 的  div2 中继承字体大小,即20px。

      那么我们现在的div内的padding就变成了1.5 x 20 = 30px

     这个padding:30 就是这么来的

     

     

    那我们再来回顾一下,

      只有父级元素的font-size 一直以em作为单位,则子元素会一直继承。但假如!!!自己!!!设置的font-size的单位为px的时候,则会直接使用自己的px单位的值。

    我这里的div1仍然是自己的20px  

    前端怎么学的会~
  • 相关阅读:
    20-存储过程
    21-事务
    18-触发器
    19-函数
    16-pymysql模块的使用
    17-视图
    CodeForces 1369B. AccurateLee
    CodeForces 1312D.Count the Arrays(组合数学)
    CodeForces 1362D. Johnny and Contribution
    CodeForces 1363F. Rotating Substrings
  • 原文地址:https://www.cnblogs.com/hope192168/p/12030161.html
Copyright © 2020-2023  润新知