我妈已经三天没打我了 2022-06-27 17:35 采纳率: 86.3%
浏览 39
已结题

怎么能把密码不可见的图标放到input里面 position: absolute;和最上面的起作用,和input的position: relative;不起作用

img

<template>
   <div class="login_bg">
      <!-- 背景图 -->
      <div class="login_bgimg">
         <img src="../assets/images/background_phone.jpg" alt="">
      </div>
      <div class="login_main">
         <div class="login_main_header">
           <router-link to="./Login.vue"><img src="../assets/images/left_back.png" alt=""></router-link>
            <p class="p1">期待您的登录</p>
            <p class="p2">每天都能和不同的小伙伴讨论不同的美食</p>
         </div>
         <div class="login_main_input">
            <input type="text" name="" id="" placeholder="请输入手机号/邮箱"  >
            <input type="text" v-if="pwdType" v-model="eyeTxt" class="inp2" />
            <input type="password" placeholder="输入新密码" v-model="eyeTxt" v-else class="inp2" />
            <!-- 密码可见不可见 -->
            <img :src="seen ? seenImg : unseenImg" @click="changeType()" v-on:mouseover="hoverEye" v-on:mouseout="outEye" class="icon-eye" />
         </div>
         <div>
         </div>
         <div class="login_main_btn"><button>登录</button></div>
         <div class="login_main_text">
            <div>
               <span>验证码登录</span>
               <span>忘记密码</span>
            </div>
            
         </div>
         <div class="login_main_other">
            <div>
               <p>其他方式登录</p></div>
            </div>
            
         <div class="login_main_icon">
            <div>
               <img src="../assets/images/QQ.png" alt="">
               <img src="../assets/images/WeChat.png" alt="">
               <img src="../assets/images/weibo.png" alt="">
            </div>
         </div>
      </div>
   </div>
</template>

<script>
   export default {
        data() {
    return {
      seen: "",
      unseenImg: require("../assets/images/eye_no.png"),   //看不见密码时小眼睛的显示图片地址
      seenImg: require("../assets/images/eye.png"),   //看得见密码时小眼睛的显示图片地址
      eyeTxt: "",
      pwdType: false   //此时文本框隐藏,显示密码框 
    };
  },
  methods: {
      changeType: function() {
         this.seen = !this.seen;   //小眼睛的变化
         this.pwdType = !this.pwdType;   //跟着小眼睛变化,密码框隐藏,显示文本框 内容就显示了
    },
    hoverEye: function(event) {
        this.seen = !this.seen;
    },
    outEye: function(event) {
        this.seen = !this.seen;
    }
  }   
   }
</script>

<style lang="scss" scoped>

  @import '../assets/css/Login.css';

</style>


/* 清除输入框内阴影 */
input,
select,
textarea {
  border: 0;
  -webkit-appearance: none;
  appearance: none;
}

/* input */
/* body背景 */
.login_bg{
   width: 100%;
   /* overflow:hidden; */
   position: relative;
}
.login_bg .login_bgimg{
   width: 100%;
   font-size:0;/*使图片没有边距,解决图片下面出现白边*/
}
.login_bg .login_bgimg>img{
   width: 100%;
}

.login_bg .login_main{
   width: 100%;
   height: 100%;
   position: absolute;
   top: 0;
}
.login_bg .login_main .login_main_header img{
      width: 21px;
      height: 39px;
      margin-top: 46px;
}
.login_bg .login_main .login_main_header>p{
   color:#ffffff;
   font-size: .35rem;
   margin-top: 40px;
   margin-left: 59px;
}
.login_bg .login_main .login_main_header .p1{
   font-size: 70px;
}
.login_bg .login_main .login_main_header .p2{
   font-size: 30px;
   margin-top: 46px;
}
input{
   /* 去掉点击输入框高亮 */
   outline: none;
   /* 去掉输入框的外边框 */
   border:none; 
   /* 清除输入框内阴影 */
   -webkit-appearance: none;
   /* 设置边框圆角效果 */
   border-radius: 50px;
   /* 设置input的大小 */
   /* padding: 10px 0px; */
   height: 100px;
   width: 630px;
   /* padding: 0 40px; */
   /* 透明度 */
   background:rgba(255, 255, 255, 0.2);
   /* 文字据左边框距离 (原意:规定文本块中首行文本的缩进)*/
   text-indent: 40px;

}
/* placeholder文字样式 */
input::-webkit-input-placeholder{
   font-size: 36px;
    font-weight: normal;
    color: #ffffff;
    opacity: 0.8;
   margin-left: 40px;
}
.login_bg .login_main .login_main_input{
   margin-top: 137px;
   display:flex;
   flex-direction: column;
   align-items:center;

}
.login_bg .login_main .login_main_input .inp2{
   margin-top: 26px;
   position: relative;
}
.login_bg .login_main .login_main_input .icon-eye{
   position: absolute;
   
}

.login_bg .login_main .login_main_btn{
   margin-top: 69px;
   display:flex;
   flex-direction: column;
   align-items:center;
}
.login_bg .login_main .login_main_btn button{
   width: 630px;
   height: 100px;
   border-radius: 50px;
   /* 透明度 */
   background:rgba(255, 255, 255, 0.6);
   font-size: 36px;
    font-weight: normal;
   opacity: 0.8;
}
.login_bg .login_main .login_main_text{
   display:flex;
   flex-direction: row;
   justify-content: center;
   align-items:center;
}
.login_bg .login_main .login_main_text div{
   margin-top: 38px;
   width: 630px;
   display: flex;
   justify-content: space-between;
   font-size: 28px;
   color: #ffffff;
   opacity: 0.8;
}
.login_bg .login_main .login_main_other{
   margin-top: 118px;
   display: flex;
   flex-direction: row;
   justify-content: center;
}
.login_bg .login_main .login_main_other div{
   width: 630px;
   font-size: 28px;
    font-weight: normal;
   color: #ffffff;
    opacity: 0.8;
}
.login_bg .login_main .login_main_icon{
   margin-top: 44px;
   display: flex;
   flex-direction: row;
   justify-content: center;
}
.login_bg .login_main .login_main_icon div{
   width: 630px;
   display: flex;
   justify-content: space-between;
}
.login_bg .login_main .login_main_icon div img{
   width: 80px;
}
  • 写回答

3条回答 默认 最新

  • 你好!机器人 2022-06-27 17:39
    关注

    login_main_input用相对定位
    icon-eye用绝对定位

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月9日
  • 已采纳回答 7月1日
  • 修改了问题 6月27日
  • 创建了问题 6月27日

悬赏问题

  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮