CSS—相对单位rem

这篇具有很好参考价值的文章主要介绍了CSS—相对单位rem。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、概述

rem是一个相对长度单位,它的单位长度取决于根标签html的字体尺寸。rem即root em的意思,中文翻译为根em。浏览器的文本尺寸一般默认为16px,即默认情况下:

1rem = 16px

rem布局原理:根据CSS媒体查询功能,更改根标签的字体尺寸,实现rem单位随屏幕尺寸的变化,如下代码所示

@media only screen and (max-width: 1600px) and (min-width: 1280px){
    html{
        font-size: 14px;
    }
}
@media only screen and (max-width: 1280px) and (min-width: 960px){
    html{
        font-size: 12px;
    }
}
@media only screen and (max-width: 960px){
    html{
        font-size: 10px;
    }
}

注意,一般使用rem方案解决移动端适配问题。IOS6以上和Android2.1以上,基本覆盖所有流行的手机系统。 

 

二、详解

通过设置根标签的字体尺寸,可以改变rem,从而形成一个可控的统一参考系。

rem有两种思路。其一设置rem所代表的尺寸大小与屏幕宽度成正比。其二设置rem所代表的尺寸大小与px容易换算,方便按照设计稿写CSS,此时可以使用媒体查询动态修改根标签的字体尺寸来适配。

第一种思路:设置rem的大小与屏幕宽度成正比

通过JS动态设置根标签的字体尺寸,从而改变rem的尺寸。为了方便计算,一般将rem设置为视图宽度的十分之一。rem可以等比例适配所有分辨率终端(PC端和各种移动端)

// 获取视图宽度
// document.documentElement是指html根节点
// document.body是指body节点
// 因为兼容问题, 有时拿不到根节点的宽度就会拿body来顶替
let htmlWidth = document.documentElement.clientWidth || document.body.clientWidth;
console.log(htmlWidth);
 
// 设置html标签的font-size为视图宽度的十分之一
let htmlDom = document.getElementsByTagName('html')[0];
console.log(htmlDom.style.fontSize);
htmlDom.style.fontSize = htmlWidth / 10 + 'px';
console.log(htmlDom.style.fontSize);

注意,使用rem+sass可以更好、更方便的适配各种分辨率的移动端。

第二种思路:设置rem尺寸与px容易换算

浏览器的文本尺寸一般默认为16px,设置如下所示。使用媒体查询动态修改根标签的字体尺寸来适配不同分辨率的终端。

html{
    font-size: 62.5%; /* 62.5% * 16px = 10px */
}

注意,一般PC浏览器规定字体尺寸最小支持12px,手机端不存在这个问题。文章来源地址https://www.toymoban.com/news/detail-418251.html

到了这里,关于CSS—相对单位rem的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【CSS】 vh、rem 和 px 的区别

    vh、rem 和 px 都是 CSS 中常见的长度单位,它们有以下区别: px(像素)是一个绝对单位,表示屏幕上的实际像素点。它的大小不会根据设备或浏览器的设置进行调整,是一个固定值。 rem(根元素字体大小的倍数)是一个相对单位,相对于根元素(通常是 html 元素)的字体大小

    2024年02月15日
    浏览(46)
  • css面试题:px、em、rem、vw、vh的区别

    pixel,px,表示像素,也就是显示器上一个个的小点,每个像素点都是大小一样的,所以像素被分到了绝对长长度单位中。 有人把px当作相对单位,是相对于 观看设备 的。对于 低 dpi/ppi(像素密度) 的设备,1px 是显示器的一个设备像素(点)。对于打印机和高分辨率屏幕,

    2024年02月12日
    浏览(43)
  • 【CSS】CSS 常用单位

    大小单位: px 。 字体相对单位: em 、 rem ;根据 [font-size] 进行计算。 视窗相对单位: vm 、 vh 、 vmax 、 vmin ;根据 [视窗大小] 进行计算。 em :相对于元素本身的 font-size 值。如果元素本身没有设置 font-size ,会继承父元素的 font-size 。 rem :相对于根元素( html 元素)的 f

    2024年02月13日
    浏览(50)
  • CSS绝对定位、相对定位

    目录 静态定位 - static 相对定位 - relative 绝对定位 - absolute 固定定位 - fixed z-index属性: 在CSS中定位有以下4种: 静态定位 - static 相对定位 - relative 绝对定位 - absolute 固定定位 - fixed 静态定位是css中的默认定位方式,也就是没有定位。在此定位方式中设置:top,bottom,left,

    2024年02月02日
    浏览(47)
  • css基础知识三:说说em/px/rem/vh/vw的区别?

    一、介绍 传统的项目开发中,我们只会用到px、%、em这几个单位,它可以适用于大部分的项目开发,且拥有比较良好的兼容性 从CSS3开始,浏览器对计量单位的支持又提升到了另外一个境界,新增了rem、vh、vw、vm等一些新的计量单位 利用这些新的单位开发出比较良好的响应式

    2024年02月09日
    浏览(51)
  • CSS构建基础(一)CSS值和单位

    **CSS中使用的每个属性都有一个值类型,定义该属性允许的值集。**查看MDN上的任何属性页将帮助您理解与值类型相关联的值,这些值类型对任何特定属性都有效。 本节课我们将学习一些最常用的值类型,以及它们最常用的值和单位。 在CSS规范和MDN上的属性页中, 您将能够发

    2024年02月09日
    浏览(36)
  • CSS中有哪些单位?

    CSS中有多种单位可用于指定尺寸、长度、角度等值。 下面是一些常见的CSS单位: 1. px (pixels):像素单位,是相对于屏幕上的单个像素点的长度单位。 2. % (percentage):百分比单位,相对于父元素的特定属性的值进行计算。例如,width: 50% 表示元素宽度为父元素宽度的50%。 3. em:

    2024年02月15日
    浏览(47)
  • CSS常用单位

    css中常见单位  真实的物理尺寸,值取决于屏幕的分辨率 相对于字体的尺寸,值取决于字体的大小 相对于窗口的尺寸,值取决于窗口的尺寸 相对于父级的尺寸

    2024年02月10日
    浏览(38)
  • CSS常见单位汇总

    像素(px): 绝对单位,以屏幕上的实际像素为基准,最常用于具体的尺寸和位置表示。 百分比(%): 相对单位,基于父元素的属性计算大小,如宽度、高度、边距等。 自适应单位(em): 相对单位,相对于当前元素的字体大小,1em 等于当前元素的字体大小。 根元素单位

    2024年02月12日
    浏览(37)
  • 【CSS】em单位的理解

    1、em单位的定义 MDN的解释:它是相对于父元素的字体大小的一个单位。 例如:父元素font-size:16px;子元素的font-size:2em(也就是32px) 注:有一个误区,虽然他是一个相对单位,并且官方对它的解释是相对于父元素字体大小的一个单位,但是它是放在了文字属性里面,也就

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包