em+rem+sass

本文介绍了CSS中的相对单位rem和vw/vh的使用,探讨了它们在响应式布局中的应用。同时,提到了百分比布局的局限性,并详细阐述了rem布局的工作原理。此外,文章还讲解了Sass预处理器的优势,如变量、嵌套和简化CSS编写等特性,以及如何使用Sass提高代码效率和可维护性。
摘要由CSDN通过智能技术生成

em

em:相对单位,它需要一个参考属性。
当前元素的字体大小。

rem

rem:相对单位 root em。
参考值为:HTML根标签的font-size的值。

  • iPhone5 320px 上面有640个像素点。 1px=1个物理像素点 1px=2个物理像素点。 160/320 一半
  • iPhoneX 375px 187.5

rem布局的原理

动态修改html根标签中的font-size值。

实现方式:

1.通过js
2.通过vw。

百分比布局缺点:
1.计算百分数不方便。
2.多层嵌套时使用不方便。

vw/vh布局:
vw:1vw = 屏幕宽度的百分之一。
vh: 1vh = 屏幕高度的百分之一。

区别:
百分比参照的是父盒子
vw/vh 参照的是屏幕。
假设:拿到的设计稿是375px的。 我们有个盒子 100*50;
使用vw表示100px。
26.6667vw=100px;
26.67vw=26.67% 110.41px

步骤:
1.拿到一个设计稿,假设这张设计稿是宽3.75rem。
2.其中一个盒子 1rem*0.3rem。但是因为px是绝对单位,在别的移动端设备中,显示的效果就会不同。
3.应该使用百分比形式去表示盒子的宽高。

可选方案:
1 百分数 不好计算,特别是多个盒子嵌套时。
2 vw

sass

css一些问题:
1.css需要书写大量冗余的代码。
2.不方便维护。

sass:作为css的一种扩展语言。它没有减少css的功能,而是在css的基础上引入了一些css原本没有的功能(变量,Mixin,运算,函数,嵌套)。

使用sass优点:
能让咱们写更少的代码,来实现更多的功能。

变量

格式:以$符号开头,跟变量名即可。

// 定义了一个变量。 变量名:变量值。
$bc-color:red;
.container {
    margin: 0 auto;
    margin-top: 200px;
    width: 800px;
    height: 300px;
    // background-color: red;
    background-color:  $bc-color;
}

嵌套

  • 在css中直接使用标签嵌套。
  • 有些时候需要使用父选择器,这个时候则使用 & 占位符。
  • 属性嵌套:复合属性可以使用。
// 如果变量嵌套在字符串中,则必须写在#{}里面。
// eg margin-#{$m-r}: 40px;
$m-r:right;
.container .button-group button {
    font-size: 24px;
    border: none;
    border-radius: 4px;
    color: #fff;
    box-shadow: 0px 5px 5px black;
    padding: 10px 20px;
    // margin-right: 40px;
    margin-#{$m-r}: 40px;
    // border-right: 1px solid;
    border-#{$m-r}: 1px solid;
}

border: {
                style:solid;
                left:{
                    width: 4px;
                    color: #888;
                }
        };

注释

  • 单行注释:// 不会保留到编译后的css文件中。
  • 多行注释:/* */ 会保留到编译后的css文件,压缩文件则没有。
  • 重要注释:/*! */ 会保留到编译后的css文件,压缩文件也会保留,一般用于版权声明。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值