模板从吾爱破解论坛搬的,原作者分享出来的图片都丢失了,样式也有点问题。写了个圆角样式及添加阴影,以及透明显示。(本想用高斯模糊奈何这个结构全都都会变成毛玻璃效果。)用PHP随机显示图片做背景,实现后台登录背景随机刷新。
效果预览
右边那里是会透明的,透明度可以在css里调整(文字透明度也会被调整,慎用!)
使用教程:
- 把 wp-login.php 复制到网站根目录替换
- 把 css images js 3个文件复制到当前使用的主题根目录下
- 将下面代码添加到主题functions.php文件中
//后台登录页自定义
//登录页
function custom_login() {
echo '<link rel="stylesheet" type="text/css" href="' . get_bloginfo('template_directory') . '/css/login.css" />'."\n";
}
add_action('login_head', 'custom_login');
//登录页标题
function custom_headertitle ( $title ) {
return get_bloginfo('name');
}
add_filter('login_headertitle','custom_headertitle');
//登录页链接
function custom_loginlogo_url($url) {
return esc_url( home_url('/') );
}
add_filter( 'login_headerurl', 'custom_loginlogo_url' );
//登录页页脚
function custom_html() {
echo '<div class="footer">'."\n";
echo '<p>©xxxx '.date('Y').' </p>'."\n";//版权
echo '</div>'."\n";
echo '<script type="text/javascript" src="'.get_bloginfo('template_directory').'/js/resizeBg.js"></script>'."\n";
echo '<script type="text/javascript">'."\n";
echo 'jQuery("body").prepend("<div class=\"loading\"><img src=\"'.get_bloginfo('template_directory').'/images/login_loading.gif\" width=\"58\" height=\"10\"></div><div id=\"bg\"><img /></div>");'."\n";
echo 'jQuery(\'#bg\').children(\'img\').attr(\'src\', \''.get_bloginfo('template_directory').'/images/login_bg.jpg\').load(function(){'."\n";
echo ' resizeImage(\'bg\');'."\n";
echo ' jQuery(window).bind("resize", function() { resizeImage(\'bg\'); });'."\n";
echo ' jQuery(\'.loading\').fadeOut();'."\n";
echo '});';
echo '</script>'."\n";
}
add_action('login_footer', 'custom_html');
css样式(部分自己写的,很乱)
/* clear float */
.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clearfix { display: block; }
/* common */
html { overflow:auto; }
body { background: white; }
#bg img { opacity:0; }
span.login {
color: #fff;
font-size: 58px;
height: 250px;
line-height: 250px;
border-bottom: 5px solid #ff5874;
padding-bottom: 5px;
}
.login #login_error, .login .message, .login .success {
border-left: 4px solid #333;
/* padding: 0; */
margin-left: 0;
margin-bottom: 0;
background-color: #fff;
box-shadow: 0 0px 0px 0 rgba(0,0,0,.1);
/* height: 0px; */
padding-top: -50px;
padding-bottom: 50p;
/* margin-bottom: 50px; */
/* margin-top: 50px; */
width: auto;
float: left;
}
/* login */
.login form .input, .login form input[type=checkbox], .login input[type=text] {
background: #fff-;
}
body.login.login-action-login.wp-core-ui.locale-zh-cn {
width: 100%;
height: 100%;
position: relative;
overflow: auto;
min-height: 950px;
}
input[type=radio], input[type=checkbox] {
border: 1px solid #6e7491;
}
#login {
/*-------登录左边图片(只用到这个,下边那个遮挡了)----------------------------------------------------- */
width: 60%;
/* max-width: 500px; */
min-width: 350px;
height: 80%;
padding: 0 0 0;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background: #394673;
/* 只设置左下角和右下角的圆角 */
border-radius: 3% 3% 3% 3%;
/* 阴影 */
-webkit-filter: drop-shadow(8px 8px 10px #000);filter: drop-shadow(8px 8px 10px #000);
background-image: url(https://img.zmki.cn/bkbj/index.php);
} /*-------登录界面背景图片----------------------------------------------------- */
#login h1 a {
margin-left: 0px;
}
/*-------登录栏图片(这个遮挡了,看不见)----------------------------------------------------- */
#login form {
box-shadow: inset 0 999px 99999px rgba(1,1,1,1), 0 99px 0 rgba(255,255,255,0.15);/*调色*/
padding: 0;
background: #242e50;
float: right;
padding-right: 7%; /*半边比例*/
height: 100%; /*高度比例*/
padding-left: 1%; /*半边比例*/
margin-top: 0;
/* 只设置左下角和右下角的圆角 */
border-radius: 0% 3% 3% 0%;
-webkit-filter: opacity(50%);filter: opacity(90%);/*透明度*/
/*background-image: url(https://60yu.w4i.cn/img/5ca07743af29c.jpg);*/
}
#login form p {
font-family:"Microsoft Yahei";
position:relative;
padding:0px;
padding-top: 35px;
}
#login a {
color:#dbe0f7 !important;
font-family:"Microsoft Yahei";
}
#login_error a {
color: #6e7491;
text-shadow: none;
}
#login form label {
color: #6e7491;
text-shadow: none;
}
input::-webkit-input-placeholder {
color: #ffffff2e;
}
.login form .input, .login form input[type=checkbox], .login input[type=text] {
background: #fff0;
}
#login form .input {
font-size: 18px;
border: none;
background-color: #fff0;
height: 50px;
line-height: 50px;
padding: 0 0;
margin-bottom: 20px;
outline: none;
box-shadow: inset 0 0px 0px rgba(0,0,0,.07);
width: 300px;
border-color: #d6d6d6;
border-style: solid;
border-top-width: 0px;
border-right-width: 0px;
border-bottom-width: 1px;
border-left-width: 0px;
color: #fff;
letter-spacing: 4px;
font-weight: 700;
}
#login form .input:focus {
box-shadow:none;
}
#login .form-send .bot {
width:100%;
border-bottom:1px solid #ccc;
}
#login form .forgetmenot {
float:none;
}
#login form p.submit {
padding:0px;
margin-top: 60px;
}
#login .submit .button {
width: 60%;
box-sizing: border-box;
display: inline-block;
height: 45px;
line-height: 45px;
border-width: 0px;
border-style: solid;
color: #fff;
background-color: #ff5874;
border-color: #fff0;
font-size: 16px;
font-weight: 600;
text-align: center;
padding: 0 40px;
outline: none;
cursor: pointer;
border-radius: 0;
transition: all 0.5s;
text-shadow: none;
border-radius: 25px;
float: left;
}
#login .submit .button:hover {
background-color: #c34157;
color: #FFF;
}
.login #backtoblog, .login #nav {
font-size: 13px;
padding: 0 24px;
opacity: 0;
height: 1px;
}
.login #nav {
margin: 24px 0 0;
opacity: 0;
height: 1px;
}
h1 {
height: 0px;
opacity: 0;
}
#login form p.wen {
padding-top: 50px;
}
span {
color: #6e7491;
font-size: 14px;
}
.wp-core-ui .button-primary {
background: #fff;
box-shadow: 0 0px 0 #ffffff;
text-shadow: none;
}
button{
outline:none;
}
/* footer */
.footer { font-size: 13px;
font-family: "Microsoft Yahei";
position: absolute;
left: 0px;
bottom: 10px;
height: 30px;
width:100%;
text-align: center;
line-height: 30px;
color: #333; }
.footer a { text-decoration:underline; color:#FFF; }
/* loading */
.loading { position:absolute; top:0px; left:0px; width:100%; height:100%; z-index:99; overflow:auto; background:#000; }
.loading img { position:absolute; top:50%; left:50%; width:58px; height:10px; margin:-5px 0px 0px -29px; }
.field{
--uiFieldPaddingTop: var(--fieldPaddingTop, 0px);
--uiFieldPaddingRight: var(--fieldPaddingRight, 0px);
--uiFieldPaddingBottom: var(--fieldPaddingBottom, 0px);
--uiFieldPaddingLeft: var(--fieldPaddingLeft, 0px);
--uiFieldBorderColor: var(--fieldBorderColor, transpatent);
--uiFieldBorderTop: var(--fieldBorderTop, 0px);
--uiFieldBorderRight: var(--fieldBorderRight, 0px);
--uiFieldBorderBottom: var(--fieldBorderBottom, 0px);
--uiFieldBorderLeft: var(--fieldBorderLeft, 0px);
--uiFieldBgColor: var(--fieldBgColor, transpatent);
--uiFieldPlaceholderColor: var(--fieldPlaceholderColor, #767676);
--uiFieldAnimationDuration: var(--fieldAnimationDuration, .3s);
--uiFieldFonstSize: var(--fieldFontSize, 16px);
position: relative;
}
.field__input{
width: 100%;
box-sizing: border-box;
background-color: var(--uiFieldBgColor);
/* for iOS */
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border-radius: 0;
border-style: solid;
border-color: var(--uiFieldBorderColor);
border-top-width: var(--uiFieldBorderTop);
border-right-width: var(--uiFieldBorderRight);
border-bottom-width: var(--uiFieldBorderBottom);
border-left-width: var(--uiFieldBorderLeft);
padding-top: var(--uiFieldPaddingTop);
padding-right: var(--uiFieldPaddingRight);
padding-bottom: var(--uiFieldPaddingBottom);
padding-left: var(--uiFieldPaddingLeft);
font-family: inherit;
font-size: 100%;
color: inherit;
}
.field__input::-webkit-input-placeholder{
color: var(--uiFieldPlaceholderColor);
opacity: 0;
}
.field__input::-moz-placeholder{
color: var(--uiFieldPlaceholderColor);
opacity: 0;
}
.field__input:focus{
outline: none;
}
.field__input:focus::-webkit-input-placeholder{
-webkit-transition: opacity var(--uiFieldAnimationDuration) ease-out var(--uiFieldAnimationDuration);
transition: opacity var(--uiFieldAnimationDuration) ease-out var(--uiFieldAnimationDuration);
opacity: 1;
}
.field__input:focus::-moz-placeholder{
-webkit-transition: opacity var(--uiFieldAnimationDuration) ease-out var(--uiFieldAnimationDuration);
transition: opacity var(--uiFieldAnimationDuration) ease-out var(--uiFieldAnimationDuration);
opacity: 1;
}
.field__label{
position: absolute;
top: calc(8px + var(--uiFieldPaddingTop) + var(--uiFieldBorderTop));
left: calc(0px + var(--uiFieldPaddingLeft) + var(--uiFieldBorderLeft));
pointer-events: none;
-webkit-transition: top var(--uiFieldAnimationDuration) cubic-bezier(0.9,-0.15, 0.1, 1.15), opacity var(--uiFieldAnimationDuration) ease-out;
transition: top var(--uiFieldAnimationDuration) cubic-bezier(0.9,-0.15, 0.1, 1.15), opacity var(--uiFieldAnimationDuration) ease-out;
will-change: top, opacity;
}
.field__input:not(:placeholder-shown) ~ .field__label{
opacity: 0;
top: calc(0px + var(--uiFieldPaddingTop) + var(--uiFieldBorderTop));
}
.field__input:focus ~ .field__label{
opacity: 1;
top: calc(-1 * calc(var(--uiFieldPaddingTop) + var(--uiFieldBorderTop) + 15px));
}
/* type1 */
.field_type1{
--uiFieldPaddingTop: var(--fieldPaddingTop, 15px);
--uiFieldPaddingRight: var(--fieldPaddingRight, 15px);
--uiFieldPaddingBottom: var(--fieldPaddingBottom, 15px);
--uiFieldPaddingLeft: var(--fieldPaddingLeft, 15px);
--uiFieldBorderTop: var(--fieldBorderTop, 2px);
--uiFieldBorderRight: var(--fieldBorderRight, 2px);
--uiFieldBorderBottom: var(--fieldBorderBottom, 2px);
--uiFieldBorderLeft: var(--fieldBorderLeft, 2px);
}
.field_type1 .field__input{
-webkit-transition: border-color var(--uiFieldAnimationDuration) ease-out;
transition: border-color var(--uiFieldAnimationDuration) ease-out;
will-change: border-color;
}
.field_type1 .field__input:focus{
--uiFieldBorderColor: var(--fieldBorderColorActive);
}
/* type 2 */
.field_type2{
--uiFieldBorderBottom: var(--fieldBorderBottom, 2px);
--uiFieldPaddingTop: var(--fieldPaddingTop, 5px);
--uiFieldPaddingRight: var(--fieldPaddingRight, 15px);
--uiFieldPaddingBottom: var(--fieldPaddingBottom, 10px);
--uiFieldPaddingLeft: var(--fieldPaddingLeft, 0px);
}
.field_type2 .field__line{
width: 0;
background-color: var(--fieldBorderColorActive);
position: absolute;
bottom: 0;
left: 0;
will-change: width;
-webkit-transition: width var(--uiFieldAnimationDuration) ease-out;
transition: width var(--uiFieldAnimationDuration) ease-out;
}
.field_type2 .field__input:focus ~ .field__line{
width: 100%;
}
/* type 3 */
.field_type3{
--uiFieldBorderBottom: var(--fieldBorderBottom, 2px);
--uiFieldPaddingTop: var(--fieldPaddingTop, 5px);
--uiFieldPaddingRight: var(--fieldPaddingRight, 15px);
--uiFieldPaddingBottom: var(--fieldPaddingBottom, 10px);
--uiFieldPaddingLeft: var(--fieldPaddingLeft, 0px);
}
.field_type3 .field__line{
width: 100%;
height: var(--uiFieldBorderBottom);
position: absolute;
bottom: 0;
left: 0;
}
.field_type3 .field__line:before, .field_type3 .field__line:after{
content: "";
width: 0;
height: 100%;
background-color: var(--fieldBorderColorActive);
position: absolute;
bottom: 0;
will-change: width;
-webkit-transition: width var(--uiFieldAnimationDuration) ease-out;
transition: width var(--uiFieldAnimationDuration) ease-out;
}
.field_type3 .field__line:before{
left: 50%;
}
.field_type3 .field__line:after{
right: 50%;
}
.field_type3 .field__input:focus ~ .field__line:before,
.field_type3 .field__input:focus ~ .field__line:after{
width: 50%;
}
/*
* demo styles
*/
.field{
--fieldBorderColor: #fff;
--fieldBorderColorActive: #fbc2eb;
--fieldPlaceholderColor: #fff;
display: block;
color: #fff;
}
.field_type1{
}
/*
* demo page
*/
.page{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-ms-flex-pack: distribute;
justify-content: space-around;
}
.page__demo{
-webkit-box-flex: 2;
-ms-flex-positive: 2;
flex-grow: 2;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.main-container{
}
.page__container{
width: 80%;
margin: auto;
padding-top: 100px;
max-width: 380px;
}
.page__section:not(:first-child){
}
@media screen and (min-width: 641px){
.melnik909{
margin-left: 2rem;
}
}
@media screen and (max-width: 640px){
.melnik909{
display: none;
}
}
input[type=text], input[type=search], input[type=radio], input[type=tel], input[type=time], input[type=url], input[type=week], input[type=password], input[type=checkbox], input[type=color], input[type=date], input[type=datetime], input[type=datetime-local], input[type=email], input[type=month], input[type=number], select, textarea {
border: none;
box-shadow: none;
background-color: #fff0;
font-size: 24px;
width: 100%;
padding: 3px;
margin: 2px 6px 5px 0;
color: #fff;
}
.page__section {
padding-top: 50px;
}
label.field.field_type2 {
border-bottom: 2px solid #ffffff;
}
.login form .input, .login input[type=text] {
margin: 2px 6px 5px 0;
letter-spacing: 2px;
}
input#user_pass {
letter-spacing: 5px;
}
span.login_title {
font-size: 48px;
color: #fff;
line-height: 150px;
padding-bottom: 5px;
border-bottom: 5px solid #ff5874;
}
span.lostpassword {
float: left;
width: 54%;
padding-top: 20px;
margin-left: 8px;
padding-right: 10px;
}
© 版权声明
THE END
- 最新
- 最热
只看作者