Twitter Login Or Signup Form
发布于
大漠
今天仿制了Twitter的登录表单,除了大背景是使用的img,其他都是纯CSS3代码实现。整个效果使用了Bootstrap的表单风格,并且运用box-sizing改变了元素默认的box module风格,同时使用了CSS3的gradient、box-shadow和text-shadow制作了其他效果。具体请查看相关代码。
HTML 结构
<form class="form">
<h1><span class="log-in">Log in</span> or <span class="sign-up">sign up</span></h1>
<p class="float">
<label for="login"><i class="icon-user"></i>Username</label>
<input type="text" name="login" placeholder="Username or email">
</p>
<p class="float">
<label for="password"><i class="icon-lock"></i>Password</label>
<input type="password" name="password" placeholder="Password" class="showpassword">
</p>
<p class="opt">
<input type="checkbox" class="showpasswordcheckbox" id="showPassword">
<label for="showPassword">Show password</label>
</p>
<p class="clearfix">
<a href="#" class="log-twitter">Log in with Twitter</a>
<input type="submit" name="submit" value="Log in">
</p>
</form>
CSS 代码
*, ::after, ::before {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing: border-box;
padding: 0;
margin: 0;
}
body {
background: #E1C192 url(wood_pattern.jpg);
}
.form {
width: 340px;
margin: 60px auto 30px;
padding: 15px;
position: relative;
background: #fffaf6;
border-radius: 4px;
color: #7e7975;
box-shadow:0 2px 2px rgba(0,0,0,0.2),0 1px 5px rgba(0,0,0,0.2), 0 0 0 12px rgba(255,255,255,0.4);
}
.form h1 {
font-size: 15px;
line-height:1;
font-weight: bold;
color: #bdb5aa;
padding-bottom: 8px;
border-bottom: 1px solid #EBE6E2;
text-shadow: 0 2px 0 rgba(255,255,255,0.8);
box-shadow: 0 1px 0 rgba(255,255,255,0.8);
}
.form h1 .log-in,
.form h1 .sign-up {
display: inline-block;
text-transform: uppercase;
}
.form h1 .log-in {
color: #6c6763;
padding-right: 2px;
}
.form h1 .sign-up {
color: #ffb347;
padding-left: 2px;
}
.form .float {
width: 50%;
float: left;
padding-top: 15px;
border-top: 1px solid rgba(255,255,255,1);
}
.form .float:first-of-type {
padding-right: 5px;
}
.form .float:last-of-type {
padding-left: 5px;
}
.form label {
display: block;
padding: 0 0 5px 2px;
cursor: pointer;
text-transform: uppercase;
font-weight: 400;
text-shadow: 0 1px 0 rgba(255,255,255,0.8);
font-size: 11px;
}
.form label i {
margin-right: 5px; /* Gap between icon and text */
display: inline-block;
width: 10px;
}
.form input[type=text],
.form input[type=password] {
font: 400 13px 'Lato', Calibri, Arial, sans-serif;
display: block;
width: 100%;
padding: 5px;
margin-bottom: 5px;
border: 3px solid #ebe6e2;
border-radius: 5px;
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.form input[type=text]:hover,
.form input[type=password]:hover {
border-color: #CCC;
}
.form label:hover ~ input {
border-color: #CCC;
}
.form input[type=text]:focus,
.form input[type=password]:focus {
border-color: #BBB;
outline: none; /* Remove Chrome's outline */
}
.form input[type=submit],
.form .log-twitter {
width: 49%;
height: 38px;
float: left;
position: relative;
box-shadow: inset 0 1px rgba(255,255,255,0.3);
border-radius: 3px;
cursor: pointer;
font:bold 14px/38px 'Lato', Calibri, Arial, sans-serif ;
text-align: center;
}
.form input[type=submit] {
margin-left: 1%;
background: #fbd568; /* Fallback */
background: -moz-linear-gradient(#fbd568, #ffb347);
background: -ms-linear-gradient(#fbd568, #ffb347);
background: -o-linear-gradient(#fbd568, #ffb347);
background: -webkit-gradient(linear, 0 0, 0 100%, from(#fbd568), to(#ffb347));
background: -webkit-linear-gradient(#fbd568, #ffb347);
background: linear-gradient(#fbd568, #ffb347);
border: 1px solid #f4ab4c;
color: #996319;
text-shadow: 0 1px rgba(255,255,255,0.3);
}
.form .log-twitter {
margin-right: 1%;
background: #34a5cf; /* Fallback */
background: -moz-linear-gradient(#34a5cf, #2a8ac4);
background: -ms-linear-gradient(#34a5cf, #2a8ac4);
background: -o-linear-gradient(#34a5cf, #2a8ac4);
background: -webkit-gradient(linear, 0 0, 0 100%, from(#34a5cf), to(#2a8ac4));
background: -webkit-linear-gradient(#34a5cf, #2a8ac4);
background: linear-gradient(#34a5cf, #2a8ac4);
border: 1px solid #2b8bc7;
color: #ffffff;
text-shadow: 0 -1px rgba(0,0,0,0.3);
text-decoration: none;
}
.form input[type=submit]:hover,
.form .log-twitter:hover {
box-shadow:inset 0 1px rgba(255,255,255,0.3), inset 0 20px 40px rgba(255,255,255,0.15);
}
.form input[type=submit]:active,
.form .log-twitter:active{
top: 1px;
}
/* Fallback fro broswers that don't support box shadows */
.no-boxshadow .form input[type=submit]:hover {
background: #ffb347;
}
.no-boxshadow .form .log-twitter:hover {
background: #2a8ac4;
}
.form p:last-of-type {
clear: both;
}
.form .opt {
text-align: right;
margin-right: 3px;
}
.form label[for=showPassword] {
display: inline-block;
margin-bottom: 10px;
font-size: 11px;
font-weight: 400;
text-transform: capitalize;
}
.form input[type=checkbox] {
vertical-align: middle;
margin: -1px 5px 0 1px;
}
注:效果中的icon是调用了bootstrap的icon制作:
<link rel="stylesheet" href="font-awesome.css" />
如需转载,烦请注明出处:https://www.fedev.cn/demo/twitter-login-or-signup-form-with-css3.html
Adidas Predator Tango