首先,该练习参考自:https://www.jianshu.com/p/2961d9c317a3

我就直接上代码了(颜色可以自己调)。

HTML:

    <nav>
<li><a href="#">独秀不爱秀</a></li>
<li><a href="#">独秀不爱秀</a></li>
<li><a href="#">独秀不爱秀</a></li>
<li><a href="#">独秀不爱秀</a></li>
<li><a href="#">独秀不爱秀</a></li>
<li><a href="#">独秀不爱秀</a></li>
</nav>
<ul id="skin">
<li id="red"></li>
<li id="green" class="current"></li>
<li id="blue"></li>
</ul>

CSS:

        /* 公共部分 */
* {
margin:;
padding:;
}
html, body {
font-size: 16px;
transition: all 1s;
}
ul, nav {
list-style: none;
} /* 网页皮肤选择模块 */
#skin {
margin-left: 100px;
margin-top: 100px;
}
#skin li {
width: 50px;
height: 50px;
color: #fff;
line-height: 50px;
text-align: center;
border-radius: 50%;
}
#skin li + li {
margin-top: 10px;
}
#skin #red {
background-color: red;
border: 25px solid red;
}
#skin #green {
background-color: #009688bd;
border: 25px solid #009688bd;
}
#skin #blue {
background-color: blue;
border: 25px solid blue;
}
#skin li.current {
background-color: #fff!important;
}
#skin li:hover, #skin li:focus {
background-color: #fff!important;
} /* nav 模块 */
nav {
width: 700px;
height: 50px;
margin: 100px auto;
}
nav li {
width: 100px;
height: 50px;
float: left;
line-height: 50px;
text-align: center;
transition: all 1s;
       border: 1px solid #fff;
}
nav li + li {
margin-left: 10px;
}
nav li a {
color: #fff;
text-decoration: none;
}
nav li a:hover, nav li a:focus {
text-decoration: underline;
}

green.css

body {
background: #8bc34a;
}
nav li {
background-color: #009688bd;
}

red.css

body {
background: #9e9e9e5e;
}
nav li {
background-color: #ff5722eb;
}

blue.css

body {
background: #673ab7a6;
}
nav li {
background-color: #03a9f4a3;
}

JavaScript:

      window.onload = () => {
// 获取选择皮肤按钮
const skinLi = document.getElementById('skin').querySelectorAll('li');
// 获取 link 标签
const cssLink = document.getElementById('link'); for (let i = 0; i < skinLi.length; i++) {
skinLi[i].addEventListener('click', () => {
// 当点击每一个选择的时候先去除掉所有选择按钮的 class
for (ele in skinLi) {
skinLi[ele].className = '';
}
skinLi[i].className = 'current';
cssLink.href = `css/${skinLi[i].id}.css`;
});
}
};

css, js 项目练习之网页换肤的更多相关文章

  1. JS实现网页换肤功能效果

    网页换肤的基本原理 使用 JS 切换对应的 CSS 样式表.例如hao123首页的右上方就有网页换肤功能.除了切换 CSS 样式表文件之外,通常的网页换肤还需要通过 Cookie 来记录用户之前更换过 ...

  2. js网页换肤

    使网页背景颜色可选黄/粉 <html> <head> <meta charset="utf-8"> <meta name="ge ...

  3. 用js来实现页面的换肤功能(带cookie记忆)

    用js来实现页面的换肤功能 js实现换肤功能的实现主要是通过利用js控制CSS来实现的.大致的实现原理是这样的, 1.先定义一个页面基本样式style.css来确定div的宽高等属性,使得整个页面的D ...

  4. JavaScript网页换肤

    使网页背景颜色可选黄/粉 <!doctype html> <html> <head><title>网页换肤</title></head ...

  5. 基于js的网页换肤(不需要刷新整个页面,只需替换css文件)

    1. [代码][JS]代码    <HTML><HEAD><link ID="skin" rel="stylesheet" typ ...

  6. 【转】Javascript+css 实现网页换肤功能

    来源:http://www.php100.com/html/webkaifa/DIV_CSS/2008/1014/2326.html Html代码部分: 1.要有一个带id的样式表链接,我们要通过操作 ...

  7. 网页换肤,模块换肤,jQuery的Cookie插件使用(转)

    具体效果如下: 第一次加载如下图: 然后点击天蓝色按钮换成天蓝色皮肤如下图: 然后关闭网页重新打开或者在打开另一个网页如下图: 因为皮肤用Cookie保存了下来,所以不会重置 具体的实现代码如下: & ...

  8. jsp 引用css/js文件返回html网页问题

    我的问题: 我直接在web.xml中匹配了 “/” ,以为能默认使用 “localhost:8080/news/” 这种方式,直接进入首页. 但是这样会匹配所有url 因此请求的 ***.js/*** ...

  9. jquery网页换肤+jquery的cookie+动态调用css样式文件,可以的

    比较具有参考性,代码全贴(当然,还需要一张图片需要的留个邮箱,看到就发) 贴在这儿吧,修改一下css的引用位置应该可以用 <%@ page language="java" c ...

随机推荐

  1. qt 断点无效

    点击 工具 -->选项-->构建套件-->手动设置项,选择正确的编译器和调试器.

  2. Python 文件读写操作实例详解

    Python提供了必要的函数和方法进行默认情况下的文件基本操作.你可以用file对象做大部分的文件操作 一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前 ...

  3. Java多态中成员的调用的特殊情况

    1.当子类和父类中有相同的成员属性的时候 public class Demo { public static void main(String[] args) { Father son=new Son ...

  4. opencv4.0.0+cmake编译(含contrib)

    https://blog.csdn.net/bobo184/article/details/88749651 前言笔者环境:win10+vs2015+cmake3.8.2 介绍下4.0.0的新特性,沿 ...

  5. 动态sql和分页

    Mybatis动态SQL If.trim.foreach BookMapper /** * 如果形参要在mapper.xml中使用需要加上面注解 * map.name: zs age: 12 * @p ...

  6. ASP.NET Core 简介

    .NET Core 是 .NET Framework 的新一代版本,是微软开发的第一个具有跨平台 ( Windows.Mac OSX .Linux ) 能力的应用程序开发框 ASP.NET Core ...

  7. 洛谷 p1516 青蛙的约会 题解

    dalao们真是太强了,吊打我无名蒟蒻 我连题解都看不懂,在此篇题解中,我尽量用语言描述,不用公式推导(dalao喜欢看公式的话绕道,这篇题解留给像我一样弱的) 进入正题 如果不会扩展欧里几德的话请先 ...

  8. Seminar Schedule

    Seminar Schedule (C2017 | 2019.9-12 | 3rd semester S0500783) *************************************** ...

  9. CSRF 跨站

    目录 CSRF 跨站请求伪造 解决跨站伪造问题: csrf 相关的装饰器: csrf.js文件: CSRF 跨站请求伪造 CSRF全称为Cross-site request forgery,也被称为: ...

  10. Spring Cloud Zuul 精进

    接着上一篇继续讲Zuul,上一篇搭建了Zuul的环境简单说明了怎么使用,本篇查缺补漏将一些常用的配置贴出来.文末我们会一起分析一下Zuul的源码,升华一下本篇的格调! 忽略所有微服务或某些微服务 默认 ...