纯css实现同一页面下选择之后更换内容效果

实现效果为如下:在同一页面下,当我选中输入手机号时,出现手机号输入框,当我选中输入验证码时,出现验证码输入框,当我选中设置密码时,出现密码框

在这里有一个小技巧,就是  1.对下面的输入框设置同样的样式,保证在更换的时候不出现抖动;2.对输入框区域一开始就设置display:none。让其不显示,在上方单选框checked的时候再显示出来。

html代码如下:

<div class="main1">
            <input type="radio" name="regist" id="regist1" checked>             <!--默认选中-->
            <label for="regist1">输入手机号
                <span>·</span>
                <span>·</span>
                <span>·</span>
            </label>
            <input type="radio" name="regist" id="regist2">
            <label for="regist2">输入验证码
                <span>·</span>
                <span>·</span>
                <span>·</span>
            </label>
            <input type="radio" name="regist" id="regist3">
            <label for="regist3">设置密码
            </label>
            <div class="tel">
                <label for="tel1">手机号:</label>
                <input type="tel" minlength="11" maxlength="11" id="tel1" placeholder="请输入你的手机号">
            </div>
            <div class="code">
                <label for="code1">验证码:</label>
                <input type="text" minlength="6" maxlength="6" id="code1" placeholder="请输入验证码">
            </div>
            <div class="pass">
                <label for="pass1">密码:</label>
                <input type="password" minlength="6" maxlength="16" id="pass1" placeholder="请输入不少于6位数的密码">
            </div>
            <a href=""><input type="submit" value="获取验证码"></a>
            <a href="../HTML/mine.html"><input type="submit" value="提交"></a>
        </div>

  css代码如下:

/* 一开始设置display值为none */
.main1>div{
    width: 100%;
    height: 1.52rem;
    background-color: white;
    font-size: .46rem;
    align-items: center;
    justify-content: space-around;
    padding-left: .48rem;
    display: none;
}

/* 设置选中后下的内容 */
.main1>input[id="regist1"]:checked~div[class="tel"]{
    display: flex;
}
.main1>input[id="regist1"]:checked~a:nth-of-type(1){
    display:flex;
}
.main1>input[id="regist2"]:checked~div[class="code"]{
    display: flex;
}
.main1>input[id="regist2"]:checked~a:nth-of-type(1){
    display: flex;
}
.main1>input[id="regist2"]:checked~a:nth-of-type(1)>input{
    background-color: rgb(219, 64, 59);
}
.main1>input[id="regist3"]:checked~div[class="pass"]{
    display: flex;
}
.main1>input[id="regist3"]:checked~a:nth-of-type(2){
    display: flex;
}
.main1>input[id="regist3"]:checked~a:nth-of-type(2)>input{
    background-color: rgb(219, 64, 59);
}

  

是不是挺简单的呢?这些小技巧用好了还能实现相当多的效果。。。。

原文地址:https://www.cnblogs.com/zhangzhiyong/p/9652246.html

时间: 2024-10-13 07:47:20

纯css实现同一页面下选择之后更换内容效果的相关文章

纯CSS实现的二级下拉菜单效果代码实例

纯CSS实现的二级下拉菜单效果代码实例:二级下拉是最为常用的效果之一,当前的此效果一般哟结合js实现,本章节介绍一个使用纯CSS实现的二级下拉菜单效果,希望能够给需要的朋友带来一定的帮助,不过此代码也有一点浏览器兼容问题,那就是在IE6中不兼容.代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" conten

纯CSS实现的二级下拉导航菜单实例代码

纯CSS实现的二级下拉导航菜单实例代码:二级下拉菜单在众多的网站都有应用,不但能够有效的组织分类导航,并且能够节省大量的网站空间,也能够实现网站的动态化效果,大多数二级导航菜单都是结合javascript实现,本章节介绍一下使用纯css实现的下拉菜单.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" co

纯CSS实现二级导航下拉菜单--css的简单应用

思想:使用css的display属性控制二级下拉菜单的显示与否.当鼠标移动到一级导航菜单的li标签时,显示二级导航菜单的ul标签.由于实现起来比较简单,所以在这里直接给出了参考代码. 1.纯CSS二级导航下拉菜单代码: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8" content="text/html" http

纯css和js版下拉菜单

<!doctype html> <html> <head> <meta charset="utf-8"> <title>css版下拉菜单</title> <style type="text/css"> div,body,ul,li{padding:0;margin:0; list-style:none;} .all{width:550px; height:30px; backgrou

用纯css改变select的下拉菜单

select { /*Chrome和Firefox里面的边框是不一样的,所以复写了一下*/ border: solid 1px #000; /*很关键:将默认的select选择框样式清除*/ appearance:none; -moz-appearance:none; -webkit-appearance:none; /*在选择框的最右侧中间显示小箭头图片*/ background: url("http://ourjs.github.io/static/2015/arrow.png")

纯css,div隐藏滚动条,保留鼠标滚动效果。

代码如下: <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <style type="text/css&qu

2015.3.14(知乎首页仿写及纯CSS兼容IE6实现响应式下拉菜单)

昨晚写了一个知乎的首页练习,只完成了上半部分的练习.下半部分做了一个纯CSS的响应式下拉菜单(可以兼容IE6). 可以看出那个知乎两个大字下面的那行字是截图截下来的,有一点色差……代码如下: js的部分只用到了获取可视区域的宽度这一点. function setIndex() { var commonWidth = $(window).outerWidith; var commonWidth = $(window).outerHeight; $(".backTitle").css(&q

纯CSS实现二级下拉导航菜单

这是一款纯CSS菜单,二级下拉导航效果,是最简洁的CSS导航菜单,兼容性也很棒,IE7/8.火狐等都支持,而且它还是学习CSS菜单编写的典型教程,让你学会很多CSS技巧. 运行效果截图如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xm

web中用纯CSS实现筛选菜单

web中用纯CSS实现筛选菜单 本文我们来用纯css实现像淘宝宝贝筛选菜单那样的效果,例子虽然没有淘宝那样强大,不过原理差不多,如果花点心思也可以实现和淘宝一样的. 内容过滤是一个在Web上常见的一个功能,特别是在电商网站,为了让用户过滤内容,仅显示符合自己的要求的内容.截个图来说,能更好的说明这样的功能,比如淘宝网: 如上图所示,用户想购买一件裙子,在整个产品列表中,显示的产品数量太多了.顾客不知道如何选择自己所需要的裙子.在顶部提供了一个分类,顾客选择需要的选项,产品中就会过滤掉不符合条件的