美文网首页前端
sass语法,页面元素内容随屏幕宽度大小改变而改变

sass语法,页面元素内容随屏幕宽度大小改变而改变

作者: warryy | 来源:发表于2018-12-04 18:40 被阅读3次

    背景:写了一个h5页面,背景是一张图片,导致了,屏幕大小改变时,图片的宽高都会改变,这就使得里面根据图片定位的元素位置也需要动态的改变。如图1所示:


    图1

    傻瓜一样想了一大堆,后来发现其实很简单,实现思路,所有需要动态改变的属性,例如:元素的宽高,文字行高,都用单位vw来写,而这就需要每个属性都需要计算一下,于是可以用sass的混合器来为属性写一个公用的计算模块(本来想直接写一个计算函数来着,但是单位不知道怎么连接上去),代码如下:

    @mixin calc-width($w){
      width: $w / 750 * 100;
    }
    @mixin calc-height($h){
      height: $h / 750 * 100;
    }
    .element-a{
       @include calc-width(60vw);
       @include calc-height(80vw);
    }
    

    由于UI图是按照750px来设计的,我们这里就用750作为计算的基数,于是在375 * 667的ip6上,元素a的宽高为30px,40px,在750 * xxx的屏幕上元素a的宽高为60px,80px。
    这样就实现了页面高度随页面宽度的改变而动态改变。

    相关文章

      网友评论

        本文标题:sass语法,页面元素内容随屏幕宽度大小改变而改变

        本文链接:https://www.haomeiwen.com/subject/dryvcqtx.html