# 2. tab 页面切换
![](https://box.kancloud.cn/bd74c7c014d4e4adfb9b03e9556c365c_548x702.gif)
~~~
* { margin: 0; padding: 0; }
.load {
width: 400px;
text-align: center;
border: 1px solid#333;
height: 800px;
background: #fff;
height: 480px;
padding: 35px 0 20px;
margin: 100px;
}
.load ul li {
list-style: none;
margin: 0 20px 35px;
display: inline-block;
font-size: 22px;
color: #000;
}
.current {
color: #f56600 !important;
}
input {
width: 325px;
height: 50px;
margin-bottom: 15px;
border: 1px solid #e0e0e0;
padding-left: 15px;
}
button {
margin: 10px 0 20px;
width: 340px;
height: 50px;
border: none;
background: #f56600;
color: #fff;
font-size: 18px;
}
.zhuce a {
color: #999999;
font-size: 12px;
}
.zhuce>a:hover {
background: #338fff;
color: #fff;
}
.zhuce {
margin-bottom: 120px;
}
fieldset {
border: none;
/* border-top: 1px solid #333; */
}
.border {
border-top: 1px solid#333;
width: 340px;
display: inline-block;
/* height: 0px; */
}
.allpay a {
display: inline-block;
background: #747474;
border-radius: 50%;
width: 30px;
height: 30px;
margin: 10px 20px;
position: relative;
}
.allpay span {
position: absolute;
width: 20px;
height: 20px;
background: url("images/icons_type.png") no-repeat;
left: 50%;
top: 50%;
margin-left: -10px;
margin-top: -10px;
}
.allpay .qq {
background-position-x: -18px;
}
.allpay .weibo {
background-position-x: -37px;
}
.allpay .zhifubao {
background-position-x: -57px;
}
.allpay .weixin {
width: 23px;
margin-left: -11.5px;
background-position-x: -84px;
}
.two {
display: none;
padding-top: 50px;
}
.content {
position: relative;
}
.content>div {
position: absolute;
width: 100%;
height: 100%;
}
~~~
~~~
<div class="load">
<ul>
<li class="current">账号登录</li>
<span>|</span>
<li>扫码注册</li>
</ul>
<div class="content">
<div class="one">
<div>
<from>
<div>
<input type="text" placeholder="邮箱/手机号/小米账号" />
</div>
<div>
<input type="password" placeholder="密码"> </div>
<div>
<button>立即登录</button>
</div>
</from>
</div>
<div class="zhuce">
<a href="#">注册小米账号</a>
<span> | </span>
<a href="#">忘记密码?</a>
</div>
<fieldset class="border">
<legend>其他登录方式</legend>
</fieldset>
<div class="allpay">
<a href="#">
<span class="qq"></span>
</a>
<a href="#">
<span class="weibo"></span>
</a>
<a href="#">
<span class="zhifubao"></span>
</a>
<a href="#">
<span class="weixin"></span>
</a>
</div>
</div>
<div class="two">
<img src="images/01.png" alt="">
</div>
</div>
</div>
<script>
var lis = document.getElementsByTagName("li");
var contents = document.querySelectorAll(".content>div");
for (let i = 0; i < lis.length; i++) {
// lis[i].index=i;
lis[i].onclick = function () {
//1.点击tab变色
for (var k = 0; k < lis.length; k++) {
lis[k].className = "";
}
this.className = "current";
//2.让对应的content出现
for (let i = 0; i < contents.length; i++) {
contents[i].style.display = "none";
}
contents[i].style.display = "block";
//contents[this.index].style.display="block";
}
}
</script>
- 效果实例
- 1.点击增加高度
- 2.tab页面切换
- 3. 列表切换
- 4. 隔行变色
- 5. swiper 轮播
- 6.vue
- 7.定时器
- 8. 向表格中添加数据
- 9 瀑布流
- 1.JavaScript基础
- 1. 变量
- 2. 调试
- 3.数据类型
- 4.转换
- 5.控制语句
- 6.运算
- 7. this
- 8 JSON对象和javascript对象的相互转换
- 2.JavaScript的控制语句
- 1. 基本控制语句
- 2.节点
- 2.1DOM补充
- 3. 函数
- js的模块化如何解决
- 不知道有什么用的
- 4.数组
- 5. String
- 补充
- 6.Ajax
- 1. 原生Ajax
- 2. HTTP/get/post
- 3.jQuery-Ajax
- 4.跨域
- 5.axios
- 6.封装
- Ajax效果
- ajax补充
- 7. 正则
- 1.创建正则表达式
- 2. 正则的api
- 3.正则语法
- 4.例子
- 量词
- 8.面向对象
- 1.原型
- ES6
- 模块化
- 1.回调地狱
- 什么是回调地狱
- 简单封装
- promise解决回调地狱
- generator解决回调地狱
- async解决回调地狱
- 2.封装
- Ajax,promise
- JavaScript难点
- 1. 闭包/作用域
- 2.原型链
- 3. 兼容性
- 适配
- JavaScript小效果
- 字符串截取