scss配置主题

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

$themes: (
  light: (
     font_color: #fff,
  ),
  dark: (
     font_color: #000,
  ),
);

@mixin themeify {
  @each $theme-name, $theme-map in $themes {
    //!global 把局部变量强升为全局变量
    $theme-map: $theme-map !global;
    //判断html的data-theme的属性值 #{}是sass的插值表达式
    //& sass嵌套里的父容器标识  @content是混合器插槽,像vue的slot
    [data-theme='#{$theme-name}'] & {
      @content;
    }
  }
}

//声明一个根据Key获取颜色的function
@function themed($key) {
  @return map-get($theme-map, $key);
}

//获取背景颜色
@mixin background_color($color) {
  @include themeify {
    background: themed($color) !important;
  }
}

//获取字体颜色
@mixin font_color($color) {
  @include themeify {
    color: themed($color) !important;
  }
}

@mixin stroke_color($color) {
  @include themeify {
    stroke: themed($color) !important;
  }
}

@mixin font_fill($color) {
  @include themeify {
    fill: themed($color) !important;
  }
}
@mixin border($color) {
  @include themeify {
    border: themed($color) 1px solid;
  }
}
@mixin border_color($color) {
  @include themeify {
    border-color: themed($color) !important;
  }
}
@mixin border_bottom_color($color) {
  @include themeify {
    border-bottom-color: themed($color) !important;
  }
}
@mixin border-bottom($color) {
  @include themeify {
    border-bottom: themed($color) 1px solid !important;
  }
}

 上面是theme.scss 文件 light,dark 黑白主题配置颜色。

在项目中使用案例如下:

 @include background_color('font_color');  //背景颜色

 @include border_color('font_color');  //边框颜色

切换data-theme:

   if (this.$store.state.dark) {
      window.document.documentElement.setAttribute('data-theme', 'dark');
    } else {
      window.document.documentElement.setAttribute('data-theme', 'light');
    }

黑:

<html lang="" data-theme="dark"></html>

白:文章来源地址https://www.toymoban.com/news/detail-834005.html

<html lang="" data-theme="light"></html>

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

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

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

相关文章

  • 前端实现动态切换主题色-使用 css/less 动态更换主题颜色(换肤功能)或通过单击更改背景颜色

    提示: 以下是本篇文章正文内容,主要描述 使用 css/less 动态更换主题色(换肤功能) 提示: 使用 css/less 动态更换主题色(换肤功能), 方法共通,不限制技术栈: 其实在日常项目开发中经常会遇到有些用户想要一些自定义的的主题色来满足不同的视觉需求,这时候就需

    2024年02月15日
    浏览(45)
  • 大鱼海棠国漫主题HTML前端网页设计成品预览与讲解DIV CSS JS

    国漫大鱼海棠主题,本套大作业共计10个页面,页面美观度较高,网页在细节设计上花了很大功夫,如边框、阴影,鼠标滑过效果等,运用的知识点有:Div+CSS、JS轮播图、Table、下拉菜单栏、视频、表单、二级页面,LOGO设计,基本期末作业所需的知识点都有覆盖~ 戳下方视频预

    2024年02月11日
    浏览(31)
  • uniapp主题切换功能的第一种实现方式(scss变量+vuex)

    随着用户端体验的不断提升,很多应用在上线的时候都要求做不同的主题,最基本的就是白天与夜间主题。 就像b站app主题切换,像这样的 uniapp因为能轻松实现多端发布而得到很多开发者的青睐,但每个端的实现也有可能不同,现我把已实现的功能一点点的大家分享给大家,

    2024年02月08日
    浏览(33)
  • uniapp主题切换功能的第二种实现方式(scss变量+require)

    在上一篇 “uniapp主题切换功能的第一种实现方式(scss变量+vuex)” 中介绍了第一种如何切换主题,但我们总结出一些不好的地方,例如扩展性不强,维护起来也困难等等,那么接下我再给大家介绍另外一种切换主题的方法“scss变量+require”的方式 在介绍如何使用前,先看下

    2024年02月08日
    浏览(33)
  • 【VUE】ElementPlus之动态主题色调切换(Vue3 + Element Plus+Scss + Pinia)

    关于ElementPlus的基础主题色自定义可以参阅《【VUE】ElementPlus之自定义主题样式和命名空间》 有了上面基础的了解,我们知道 ElementPlus 的主题色调是基于 CSS3变量 特性进行全局控制的, 那么接下来我们也基于 CSS3变量 来实现主题色调的 动态切换 效果; 主要控制的色调类型有

    2024年02月08日
    浏览(26)
  • web前端网页设计期末课程大作业:旅游网页主题网站设计——三亚旅游网页设计(6个页面) HTML+CSS+JavaScript

    👨‍🎓学生HTML静态网页基础水平制作👩‍🎓,页面排版干净简洁。使用HTML+CSS页面布局设计,web大学生网页设计作业源码,这是一个不错的旅游网页制作,画面精明,排版整洁,内容丰富,主题鲜明,非常适合初学者学习使用, 这个实例比较全面,有助于同学的学习,本文将

    2024年02月03日
    浏览(44)
  • 将scss文件转换成css文件

    大家平时做项目肯定都习惯了使用scss或者less去写样式,如果是使用工程化的项目我们可以借助插件很方便的将scss或者less转换成css。那如果我们没有使用工程化,比如简单的demo或者官网等项目又希望可以通过scss去编写文件应该怎么办呢,我们可以借助sass插件去帮我们转换生

    2024年02月06日
    浏览(24)
  • css之文字连续光影特效、动画、scss

    2024年02月10日
    浏览(25)
  • css/less/scss代码注意事项

    一.命名 1.类名使用小写字母,以中划线分割;id 使用 驼峰式命名; 2.less/scss中的函数、混合采用驼峰命名; 3. class 的命名不要使用 标签名,如 .p .div .img ; 二.选择器 尽量使用直接子选择器,否则,有时会造成性能损耗 .content .title { ... } (不推荐)(后代选择器) .content .title {

    2024年02月04日
    浏览(37)
  • css,less,scss中的深度选择器,结合elementUi使用

    css中深度选择器用到的是 加类名 可以很方便的找到自己想要修改的样式  lees中用到 /deep/ 加类名   scss中用到::v-deep 加类名    

    2024年02月13日
    浏览(32)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包