为了账号安全,请及时绑定邮箱和手机立即绑定

web开发中如何实现皮肤的切换

web开发中如何实现皮肤的切换

慕姐4208626 2019-04-21 20:14:36
在网站开发中,经常有皮肤或者主题切换的功能,比如discuz、wordpress等,只要选择了哪个主题,然后就可以切换到对应的样式中,请问背后的实现原理和逻辑是什么,具体用代码时怎么实现的?(在google和百度上搜了一圈没找打好的相关技术文章,来这里找小伙伴们帮忙解答下疑惑。谢了)
查看完整描述

2 回答

?
慕妹3146593

TA贡献1820条经验 获得超9个赞

有两种
一种就是上边说的,切换css,html结构不变。
第二种就是切换目录,一般都是定义一个目录为主题的根目录,子目录就是各种不同的主题,然后通过定义常量或者配置数组或者存到数据库,然后切换不同的目录名称就可以达到切换主题的目的
具体实现代码
define('THEME','default');//定义当前使用主题
functionrender($file,$vars=[]){
extract($vars);
ob_start();
includeROOT.'/themes/'.THEME.'/'.$file;
returnob_get_clean();
}
                            
查看完整回答
反对 回复 2019-04-21
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

换肤的实现一般是将颜色和背景相关的样式抽取出来,放到单独的样式表。换肤的时候,切换样式表即可。样式表的切换其实是非常简单的,麻烦的是如何去规划你的样式表,当你把皮肤样式抽取后,整个css样式依然还非常清晰,逻辑合理,这就需要比较深厚的css重构功底。
                            
查看完整回答
反对 回复 2019-04-21
  • 2 回答
  • 0 关注
  • 383 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信