基于html+css做一个好看的可翻转登录注册界面

下面我将详细讲解“基于html+css做一个好看的可翻转登录注册界面”的完整攻略。

一、分析设计需求

在开始编写代码前,我们需要先分析设计需求,确切地知道我们需要实现什么样的界面。根据需求,我们需要完成以下内容:

  • 制作一个两面可翻转的登录注册页面;
  • 界面需要美观、易用。

二、编写HTML代码

制作一个好看的可翻转登录注册界面,需要编写合理的HTML代码,使得网页结构完整清晰。在此,我们先编写HTML代码,完成网页文档结构搭建。

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>可翻转登录注册界面</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div class="container">
        <div class="form-container sign-up-container">
            <form action="#">
                <h2>Create Account</h2>
                <input type="text" placeholder="Name">
                <input type="email" placeholder="Email">
                <input type="password" placeholder="Password">
                <button>Sign Up</button>
            </form>
        </div>
        <div class="form-container sign-in-container">
            <form action="#">
                <h2>Sign in</h2>
                <input type="email" placeholder="Email">
                <input type="password" placeholder="Password">
                <a href="#">Forgot your password?</a>
                <button>Sign In</button>
            </form>
        </div>
        <div class="overlay-container">
            <div class="overlay">
                <div class="overlay-panel overlay-left">
                    <h2>Welcome Back!</h2>
                    <p>To keep connected with us please login with your personal info</p>
                    <button class="ghost" id="signIn">Sign In</button>
                </div>
                <div class="overlay-panel overlay-right">
                    <h2>Hello!</h2>
                    <p>Enter your personal details and start journey with us</p>
                    <button class="ghost" id="signUp">Sign Up</button>
                </div>
            </div>
        </div>
    </div>
</body>
</html>

三、编写CSS样式

完整、规范的HTML文档结构搭建完成后,我们需要让页面变得美观、易用。这时,CSS样式就显得尤为重要。通过CSS样式,我们可以精细地调整页面中的各种元素,让网页呈现出我们所需要的样式。

示例代码:

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,800');

* {
    box-sizing: border-box;
}

body {
    background-color: #f6f5f7;
    font-family: 'Montserrat', sans-serif;
    height: 100vh;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.container {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 14px 28px rgba(0,0,0,0.25), 
                0 10px 10px rgba(0,0,0,0.22);
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 1000px;
    min-height: 500px;
}

.form-container {
    position: absolute;
    top: 0;
    height: 100%;
    transition: all 0.6s ease-in-out;
}

.sign-up-container {
    left: 0;
    width: 50%;
    z-index: 2;
}

.sign-in-container {
    left: 0;
    width: 50%;
    opacity: 0;
    z-index: 1;
}

.overlay-container {
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 100%;
    overflow: hidden;
    transition: transform 0.6s ease-in-out;
    z-index: 100;
}

.overlay {
    background: #FF416C;
    background: -webkit-linear-gradient(to right, #FF4B2B, #FF416C);
    background: linear-gradient(to right, #FF4B2B, #FF416C);
    background-size: cover;
    background-position: 0 0;
    color: #fff;
    position: relative;
    left: -100%;
    height: 100%;
    width: 200%;
    transform: translateX(0);
    transition: transform 0.6s ease-in-out;
}

.overlay-panel {
    position: absolute;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 0 40px;
    height: 100%;
    width: 50%;
    text-align: center;
    transform: translateX(0);
    transition: transform 0.6s ease-in-out;
}

.overlay-left {
    transform: translateX(-20%);
}

.overlay-right {
    right: 0;
    transform: translateX(0);
}

.social-container {
    margin: 20px 0;
}

.social-container a {
    border: 1px solid #ddd;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0 5px;
    height: 40px;
    width: 40px;
}

/* 所有按钮 */
button {
    border-radius: 20px;
    border: 1px solid #FF4B2B;
    background-color: #FF4B2B;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 12px 45px;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: transform 80ms ease-in;
    cursor: pointer;
}

button:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

button:active {
    transform: scale(0.95);
}

.gostButton {
    background-color: transparent;
    border-color: #fff;
    color: #fff
}

input {
    background-color: #f5f5f5;
    border: none;
    padding: 12px 15px;
    margin: 8px 0;
    width: 100%;
}

h1 {
    font-size: 2.2rem;
    font-weight: bold;
    margin: 0;
}

h2 {
    font-size: 1.5rem;
    font-weight: bold;
    margin: 0;
}

p {
    font-size: 1.2rem;
    color: #666;
    margin: 0;
    line-height: 1.5;
}

四、编写JavaScript代码

除了HTML和CSS代码,我们还需要编写JavaScript代码,使得页面能够实现翻转和动画特效。

示例代码:

var signUpButton = document.getElementById('signUp');
var signInButton = document.getElementById('signIn');
var container = document.getElementById('container');

signUpButton.addEventListener('click', () => {
    container.classList.add("right-panel-active");
});

signInButton.addEventListener('click', () => {
    container.classList.remove("right-panel-active");
});

五、整合代码

复制HTML、CSS、JavaScript代码粘贴进对应文件中,并在浏览器中打开HTML文件,就可以看到我们制作的好看的可翻转登录注册界面了。

六、总结

以上便是制作一个基于HTML+CSS的好看的可翻转登录注册界面的完整攻略了。我们需要依次进行:分析设计需求、编写HTML代码、编写CSS样式、编写JavaScript代码、整合代码等步骤,才能制作出一个完整的网页界面。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于html+css做一个好看的可翻转登录注册界面 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • 纯CSS3实现表单验证效果(非常不错)

    请看下面的详细讲解: 纯CSS3实现表单验证效果(非常不错) 介绍 这是一种使用纯CSS3技术实现输入表单的验证效果的方法,无需使用JavaScript。这种方法基于CSS3中的:checked伪类选择器实现,有助于简化代码并提高浏览器性能。这种方法可以用于输入表单的各种类型的验证,例如:是否位数符合要求、是否为空、是否是正确的邮箱格式等。 步骤 Step …

    css 2023年6月10日
    00
  • 浏览器实现移动端高性能css3动画(开启gpu加速)

    我们来详细讲解一下浏览器实现移动端高性能CSS3动画的完整攻略。 开启GPU加速的原因 众所周知,移动端设备的CPU性能相对于桌面端还是有很大差距的,而且移动设备的屏幕分辨率也普遍比较高,为了保证在移动设备上实现高质量的动画效果,我们就需要利用GPU的加速能力,从而实现流畅的CSS3动画。 如何开启GPU加速 在CSS样式中添加 translate3d 或 …

    css 2023年6月9日
    00
  • CSS优先级规则的细节

    CSS 优先级规则的细节 CSS 优先级是决定样式被应用的重要标准,当多个样式规则应用到同一个元素时,会按照一定的规则去判断哪些样式规则生效,哪些样式规则被舍弃掉。本篇攻略将详细讲解 CSS 优先级的相关规则和细节。 优先级机制 CSS 优先级按照特定的规则计算,一般来说优先级大的样式规则会覆盖优先级低的样式规则,计算规则如下: !important:样式规…

    css 2023年6月9日
    00
  • CSS first-chjld伪类属性匹配一个序列的第一个元素

    CSS中的:first-child伪类选择器可以匹配一个元素的第一个子元素。这意味着,如果一个元素有多个子元素,:first-child伪类选择器会选择第一个子元素。相应地,CSS中的:first-of-type伪类选择器也可以选择一个元素的第一个指定类型的子元素。但是有时候我们想要选择一个序列的第一个元素,而不仅仅是该元素的子元素。为了实现这个目的,我们可…

    css 2023年6月10日
    00
  • css将div层固定显示在页面底部不随滚动条滚动

    下面是详细讲解“css将div层固定显示在页面底部不随滚动条滚动”的完整攻略: 使用CSS的position属性 首先,在HTML文件中创建一个div标签,用于放置需要固定在页面底部的内容: <div class="footer"> <!– 这里是需要固定在页面底部的内容 –> </div> 然后,…

    css 2023年6月10日
    00
  • CSS或者JS实现鼠标悬停显示另一元素

    实现鼠标悬停显示另一元素,可以使用CSS或者JS来实现。在此,我将分别介绍两种方式的实现方法,并给出具体的示例说明。 使用CSS实现 使用CSS可以通过:hover选择器实现鼠标悬停显示另一元素的效果。具体步骤如下: 首先需要确定鼠标悬停时要显示的元素,并在CSS中设置display为none,即元素默认不显示。 接着,需要为要悬停的元素添加:hover选择…

    css 2023年6月10日
    00
  • css画一个棒棒糖的实例代码

    下面是“CSS画一个棒棒糖”的实例代码攻略,具体步骤如下: 1. 画出棒棒糖的形状 首先,我们可以使用倾斜的矩形和圆形来绘制棒棒糖的形状。 例如,我们可以使用以下代码来创建棒棒糖的形状: .lollipop { width: 50px; height: 120px; position: relative; background: #f00; border-r…

    css 2023年6月9日
    00
  • CSS教程(1):学习CSS背景相关知识

    下面是详细讲解“CSS教程(1):学习CSS背景相关知识”的完整攻略。 标题 CSS教程(1):学习CSS背景相关知识 概述 本教程将带领读者深入学习CSS中与背景相关的知识,包括背景颜色、背景图片以及背景定位等内容。 具体内容 1. 背景颜色 在CSS中,可以通过background-color属性来设置背景颜色。该属性可以接受任何有效的CSS颜色值。 示…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部