美文网首页
主题,动态修改css中:root定义的变量

主题,动态修改css中:root定义的变量

作者: 一只飞 | 来源:发表于2018-03-08 17:58 被阅读0次

    额,我是在ionic3项目中需要该功能,别的地方应该也能用这个方法,如:网页等。
    我在app/theme/variables.scss中,定义了如下变量:

    :root {
      --main: rgba(40,40,40,1);
      --block: rgba(70,70,70,1);
      --content: rgba(100,100,100,1);
    }
    

    然后,在其他页面的scss文件中就可以使用了:
    background-color: var(--content);
    重点:修改main,block,content变量

         let main = '170,170,170';
         let  block = '125,125,125';
         let  content = '100,100,100';
        document.documentElement.style.setProperty(`--main`, 'rgba('+main+',1)');
        document.documentElement.style.setProperty(`--block`, 'rgba('+block+',1)');
        document.documentElement.style.setProperty(`--content`, 'rgba('+content+',1)');
    

    ok!

    当然,ionic3推荐的主题更改方式是,在theme文件夹中,定义多个主题的scss文件,然后动态替换scss文件,达到主题更改的目的:https://devdactic.com/dynamic-theming-ionic/,可能要翻q。

    相关文章

      网友评论

          本文标题:主题,动态修改css中:root定义的变量

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