前端特效-HTML+CSS+JS - 登录注册界面

实现的效果


项目需要的图片资源

html部分 + js部分


<html lang="en">
 <head>
   <meta charset="UTF-8" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
   <meta http-equiv="X-UA-Compatible" content="ie=edge" />
   <title>Documenttitle>

   <link rel="stylesheet" href="css\style.css" />
 head>
 <body>
   <div class="container">
     <img src="img/bc.jpg" alt="" />
     <div class="panel">
       <div class="content login">
         <div class="switch">
           <span id="login" class="active">Loginspan>
           <span>/span>
           <span id="signup">Sign Upspan>
         div>
         <form action="">
           <div id="email" class="input" placeholder="Email"><input type="text" />div>
           <div class="input" placeholder="Username"><input type="text" />div>
           <div class="input" placeholder="Password"><input type="password" />div>
           <div id="repeat" class="input" placeholder="Repeat"><input type="password" />div>
           <span>Forget?span>
           <button>LOGINbutton>
         form>
       div>
     div>
   div>
 body>

 <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js">script>
 <script>
   $('#login').click(function() {
     $('.switch span').removeClass('active')
     $(this).addClass('active')

     $(this)
       .parents('.content')
       .removeClass('signup')
     $(this)
       .parents('.content')
       .addClass('login')

     $('form button').text('LOGIN')
   })

   $('#signup').click(function() {
     $('.switch span').removeClass('active')
     $(this).addClass('active')

     $(this)
       .parents('.content')
       .removeClass('login')
     $(this)
       .parents('.content')
       .addClass('signup')

     $('form button').text('SIGNUP')
   })

   $('.input input').on('focus', function() {
     $(this)
       .parent()
       .addClass('focus')
   })

   $('.input input').on('blur', function() {
     if ($(this).val() === '')
       $(this)
         .parent()
         .removeClass('focus')
   })
 script>
html>

css部分

/* 配色方案:
    背景: rgb(224, 207, 254), rgb(255, 239, 255)
    按钮: rgb(181, 154, 254),rgb(245, 189, 253) 
*/

*{
    margin: 0;
    padding: 0;
}

body{
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(45deg,rgb(181, 154, 254),rgb(245, 189, 253) ) fixed;
}

.container{
    position: relative;
    width: 70rem;
}

.container img{
    width: 70rem;
}

.switch span{
    color:#ccc;
    font-size: 1.4rem;
    cursor: pointer;
}

.switch span.active{
    color:rgb(181, 154, 254);
}

.panel{
    width: 30%;
    margin: 10rem 0 0;
    position: absolute;
    right:0;
    top:0;  

    display: flex;
    justify-content: center;
}

form{
    width: 12rem;
    margin: 3rem 0 0;
}

form .input{
    position: relative;
    opacity: 1;
    height: 2rem;
    width: 100%;
    margin: 2rem 0;
    transition: .4s;
}

.input input{
    outline: none;
    width: 100%;
    border: none;
    border-bottom: .1rem solid rgb(181, 154, 254);
}

.input::after{
    content:attr(placeholder);
    position: absolute;
    left: 0;
    top: -10%;
    font-size: 1.2rem;
    color: rgb(129, 101, 207);
    transition: .3s;
}

.input.focus::after{
    top:-50%;
    font-size: .9rem;
}

.login .input#email,
.login .input#repeat{
    margin: 0;
    height: 0;
    opacity: 0;
}

form span{
    display: block;
    color:rgb(110, 89, 167);
    font-size: .8rem;
    cursor: pointer;
}

form button{
    border:none;
    outline: none;
    margin: 2.5rem 0 0;
    width: 100%;
    height: 3rem;
    border-radius: 3rem;
    background: linear-gradient(90deg,rgb(181, 154, 254),rgb(245, 189, 253) );
    box-shadow: 0 0 8px rgb(181, 154, 254);
    cursor: pointer;
    color:white;
}

你可能感兴趣的:(前端特效)