当前位置: 首页 > news >正文

广州网站建设服务买了空间和域名 怎么做网站

广州网站建设服务,买了空间和域名 怎么做网站,网站改版阿里云怎么做网站301定向,用WordPress建什么站好几种实现主题切换的方式 1. 利用 prefers-color-scheme 特性 prefers-color-scheme是CSS 媒体特性【media】用于检测用户是否有将操作系统的主题色设置为亮色【light】或者暗色【dark】。 当前prefers-color-scheme新特性支持各大主流电脑#xff08;window和IOS系统#…几种实现主题切换的方式 1. 利用 prefers-color-scheme 特性 prefers-color-scheme是CSS 媒体特性【media】用于检测用户是否有将操作系统的主题色设置为亮色【light】或者暗色【dark】。 当前prefers-color-scheme新特性支持各大主流电脑window和IOS系统Linux系统可以用第三方工具端浏览器谷歌、火狐等包括手机端的安卓和苹果足以说明prefers-color-scheme属性已经稳定成熟可以用于生产环境了。 prefers-color-scheme的使用也很简单直接需要在全局css文件中添加以下代码 :root {color-scheme: light dark; }js可以通过window.matchMedia()来监听系统主题。 const scheme window.matchMedia((prefers-color-scheme: dark)); if (scheme.matches) {console.log(深色模式); } else {console.log(浅色模式); }除了自动跟随系统外也可以手动切换。不过需要结合css变量详情请看第四点。 优点 简单 缺点 不能自定义深浅主题样式 2. 切换 link 通过改变link的href。 优点 按需加载 缺点 动态加载样式样式文件过大或者网络较慢的情况下会导致样式切换不流畅存在样式优先级问题后续新增样式或者修改比较麻烦 3. 引入所有主题样式通过类名切换 类似第二种不过为了解决反复加载样式文件问题采用提前将样式全部引入的方式在需要切换主题的时候将指定的根元素类名更换相当于直接做了样式覆盖在该类名下的各个样式就统一地更换了 .light-scheme {background: #fff; } .dark-scheme {background: #1b1b1b; }function change(scheme) {const content document.getElementsByTagName(body)[0];content.setAttribute(class, scheme); }优点 不用重新加载样式文件切换时不会卡顿 缺点 文件较大会导致首屏加载慢存在优先级问题后续新增样式或者修改比较麻烦 4. css 变量 类名切换 大体思路跟方案 2 相似依然是提前将样式文件载入切换时将指定的根元素类名更换。不过这里相对灵活的是默认在根作用域下定义好 CSS 变量只需要在不同的主题下更改 CSS 变量对应的取值即可。 :root {--color-background: #1b1b1b;--color-text-default: #0b1016;--white-color-background: #fff; } .light-scheme {background: var(--white-color-background);color: var(--color-text-default); } .dark-scheme {background: var(--color-background);color: white; }let flag true; const content document.getElementsByTagName(body)[0]; const but document.getElementsByTagName(button)[0]; but.onclick function () {flag !flag;if (flag) {content.setAttribute(class, light-scheme);} else {content.setAttribute(class, dark-scheme);} };优点 不用重新加载样式文件在样式切换时不会有卡顿在需要切换主题的地方利用 var()绑定变量即可不存在优先级问题新增或修改主题方便灵活仅需新增或修改 CSS 变量即可在 var()绑定样式变量的地方就会自动更换 缺点 首屏加载时会牺牲一些时间加载样式资源 前面提到css变量还可以结合prefers-color-scheme一起使用实现跟随系统的自定义深浅主题样式。 :root {--color-background: #1b1b1b;--color-text-default: #0b1016;--white-color-background: #fff; } /* 监听操作系统主题模式 */ media (prefers-color-scheme: dark) {body {background-color: var(--color-background);} } media (prefers-color-scheme: light) {body {background-color: var(--white-color-background);} }5. css 变量 动态 setProperty 适合自定义颜色背景 只需在全局中设置好预设的全局 CSS 变量样式无需单独为每一个主题类名下重新设定 CSS 变量值因为主题是由用户动态决定。 定义一个工具类方法用于修改指定的 CSS 变量值调用的是 CSSStyleDeclaration.setProperty export const setCssVar (prop: string,val: any,dom document.documentElement ) {dom.style.setProperty(prop, val); };在样式发生改变时调用此方法即可 setCssVar(--theme-color, color);优点 不用重新加载样式文件在样式切换时不会有卡顿仔细琢磨可以发现其原理跟方案 5 利用 Vue3 的新特性 v-bind 是一致的只不过此方案只在:root 上动态更改 CSS 变量而 Vue3 中会将 CSS 变量绑定到任何依赖该变量的节点上。需要切换主题的地方只用在:root 上动态更改 CSS 变量值即可不存在优先级问题新增或修改主题方便灵活 缺点 首屏加载时会牺牲一些时间加载样式资源相对于前几种预设好的主题这种方式的样式定义在首屏加载基本可以忽略不计 6. vue3 专属的 v-bind script setup// 这里可以是原始对象值也可以是ref()或reactive()包裹的值根据具体需求而定const theme {color: red,}; /scripttemplatephello/p /templatestyle scopedp {color: v-bind(theme.color);} /styleVue3 中在 style 样式通过 v-bind()绑定变量的原理其实就是给元素绑定 CSS 变量在绑定的数据更新时调用 CSSStyleDeclaration.setProperty 更新 CSS 变量值。
http://www.dnsts.com.cn/news/110383.html

相关文章:

  • 网站建设人才调研wordpress和discuz关联
  • 网站前后台代码商贸信息网站
  • 个人网站管理系统公众号平台制作
  • 北京4网站建设沈阳软件开发培训
  • 深圳中高端网站建设简述网络营销的含义
  • 钦州浦北网站建设泉州北京网站建设
  • 建设银行公积金网站提示udun集安网站建设
  • 哪个网站可以用MC皮肤做图片重庆网站建设哪家公司好
  • 佛山网站建设公司价格多少做视频网站用什么好
  • 上海青浦做网站源码网站怎么做
  • 珠海网站建设科技公司自己装修设计app
  • 衡阳网站定制cdr做图时怎么找到网站的
  • 电子商务网站用什么语言开发扬州网站建设兼职
  • 济南网站建设流程郑州网站建设讯息
  • 酒店网站案例菏泽做网站电话
  • 公众号如何推广宣传网站优化有什么用
  • 做视频网站视频用什么插件做网站的公司是什么
  • 全球电子商务网站排名网站广告案例
  • 网站建设的行业资讯qq空间注册申请
  • 建筑公司网站关键词有哪些李贤威wordpress
  • 台州汇客网站建设优化网站标题是什么意思
  • django做的网站模板网站建设专家有哪些
  • 哈尔滨模板建站推荐网络营销网站平台有哪些
  • 网站备案 类型手机浏览器输入网址
  • 辽宁省城乡建设网站营销型网站建设就找山东艾乎建站
  • 综合性电子商务网站有哪些河北保定刚刚发布的紧急通知
  • 百度不收录网站怎么办百度网页版在线使用
  • 知名建设网站建网站是什么专业类别
  • 建设网站的网站叫什么网页制作基础教程简介
  • 西安市做网站公司pc 手机网站源码