亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

el-input寬度跟隨輸入內(nèi)容自適應(yīng)的實(shí)現(xiàn)方法

 更新時(shí)間:2023年08月11日 10:46:34   作者:echo-_-  
這篇文章主要給大家介紹了關(guān)于el-input寬度跟隨輸入內(nèi)容自適應(yīng)的實(shí)現(xiàn)方法,我們?cè)賹?shí)際應(yīng)用中可能需要input文本框能夠根據(jù)輸入字符的所占據(jù)的寬度自動(dòng)調(diào)節(jié)尺寸,需要的朋友可以參考下

前言

用了很多次el-input輸入框,但是沒有對(duì)這一個(gè)實(shí)現(xiàn)方式做深一步的思考,這次就把自己整理的方式記錄下來;

在這里插入圖片描述

如果默認(rèn)直接使用,這里的input輸入框的寬度是width:100%。繼承它的父級(jí)的寬度。

思路1:

1.首先我們可以獲取輸入內(nèi)容的寬度,然后給定一個(gè)span標(biāo)簽,使其的寬度撐開input的寬度。

<div class="inputStyle">
      <el-input
        @input="getValue"
        v-model="value1"
        :style="{ width: spanWidth }"
      ></el-input>
      <span class="spanText">{{ spanText }}</span>
    </div>

這里需要實(shí)時(shí)監(jiān)聽輸入內(nèi)容的寬度

methods: {
    getValue(val) {
      this.spanText = val;
      const spanStyle = document.querySelector(".spanText");
      this.$nextTick(() => {    // 如果不用$nextTick的話頁面并不會(huì)更新,它是在下次dom更新后再渲染到頁面上
        this.spanWidth =
          spanStyle.offsetWidth < 160
            ? "160px"
            : spanStyle.offsetWidth + 30 + "px";
      });
    },
  },

css部分:

.inputStyle {
  margin-top: 30px;
  width: 300px;
}
.spanText {
  font-size: 12px;
  position: absolute;
  left: 0;
  padding: 0 15px;
  white-space: nowrap;
  visibility: hidden;
}

在這里插入圖片描述

// 這個(gè)方法有點(diǎn)不那么自然,如果輸入英文和中文,會(huì)造成有一點(diǎn)間隙的存在,如果大家優(yōu)化的話可以自行發(fā)揮,能力有限這個(gè)是最簡(jiǎn)單的版本…

思路2:

使用slot :Select 組件頭部?jī)?nèi)容。然后設(shè)置樣式即可,不用監(jiān)聽,展現(xiàn)效果上會(huì)比較好一點(diǎn)。

 <el-input v-model="value1" class="inputStyle">
        <template slot="prefix">
          {{ value1 }}
        </template>
      </el-input>

css部分:

.inputStyle {
  margin-top: 30px;
  text-align: start;    // 這里一樣要設(shè)置,否則不是對(duì)齊的居中狀態(tài)
  min-width: 160px;   //這里給一個(gè)最小寬度
}
.el-input {
   width: auto;  // 這里一定要設(shè)置為auto 否則由于input是默認(rèn)width :100%的
}
.inputStyle >>> .el-input__prefix {
  display: inline-block;
  position: relative;
  border: 1px solid #dcdfe6;
  box-sizing: border-box;
  color: #606266;
  font-size: inherit;
  height: 40px;
  line-height: 40px;
  padding: 0 30px;
  transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  padding-left: 30px;
  left: 0;
  visibility: hidden;
}
.inputStyle >>> .el-input__inner {
  position: absolute;
}

效果如下:

在這里插入圖片描述

總結(jié) 

到此這篇關(guān)于el-input寬度跟隨輸入內(nèi)容自適應(yīng)實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)el-input寬度跟隨內(nèi)容自適應(yīng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 教你如何使用VUE組件創(chuàng)建SpreadJS自定義單元格

    教你如何使用VUE組件創(chuàng)建SpreadJS自定義單元格

    這篇文章主要介紹了使用VUE組件創(chuàng)建SpreadJS自定義單元格的方法,通常我們使用組件的方式是,在實(shí)例化Vue對(duì)象之前,通過Vue.component方法來注冊(cè)全局的組件,文中通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2022-01-01
  • vue中使用moment設(shè)置倒計(jì)時(shí)的方法

    vue中使用moment設(shè)置倒計(jì)時(shí)的方法

    這篇文章給大家介紹了vue中使用moment設(shè)置倒計(jì)時(shí)的方法,文中通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-02-02
  • Vue-cli3 $ is not defined錯(cuò)誤問題及解決

    Vue-cli3 $ is not defined錯(cuò)誤問題及解決

    這篇文章主要介紹了Vue-cli3 $ is not defined錯(cuò)誤問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • vue項(xiàng)目打包后上傳至GitHub并實(shí)現(xiàn)github-pages的預(yù)覽

    vue項(xiàng)目打包后上傳至GitHub并實(shí)現(xiàn)github-pages的預(yù)覽

    這篇文章主要介紹了vue項(xiàng)目打包后上傳至GitHub并實(shí)現(xiàn)github-pages的預(yù)覽,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • webstorm和.vue中es6語法報(bào)錯(cuò)的解決方法

    webstorm和.vue中es6語法報(bào)錯(cuò)的解決方法

    本篇文章主要介紹了webstorm和.vue中es6語法報(bào)錯(cuò)的解決方法,小編總結(jié)了webstorm和.vue中出現(xiàn)的es6語法報(bào)錯(cuò),避免大家采坑,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • vue-music關(guān)于Player播放器組件詳解

    vue-music關(guān)于Player播放器組件詳解

    這篇文章主要為大家詳細(xì)介紹了vue-music關(guān)于Player播放器組件的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Vue文件下載進(jìn)度條的實(shí)現(xiàn)過程

    Vue文件下載進(jìn)度條的實(shí)現(xiàn)過程

    這篇文章主要介紹了Vue文件下載進(jìn)度條的實(shí)現(xiàn)原理,通過使用onDownloadProgress方法API獲取進(jìn)度及文件大小等數(shù)據(jù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 基于vue開發(fā)微信小程序mpvue-docs跳轉(zhuǎn)頁面功能

    基于vue開發(fā)微信小程序mpvue-docs跳轉(zhuǎn)頁面功能

    這篇文章主要介紹了基于vue寫微信小程序mpvue-docs跳轉(zhuǎn)頁面,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • vue配置electron使用electron-builder進(jìn)行打包的操作方法

    vue配置electron使用electron-builder進(jìn)行打包的操作方法

    這篇文章主要介紹了vue配置electron使用electron-builder進(jìn)行打包的操作方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • Vue2.x配置路由導(dǎo)航守衛(wèi)實(shí)現(xiàn)用戶登錄和退出

    Vue2.x配置路由導(dǎo)航守衛(wèi)實(shí)現(xiàn)用戶登錄和退出

    之前在Vue的學(xué)習(xí)中通過路由導(dǎo)航守衛(wèi)控制實(shí)現(xiàn)了用戶登錄模塊的功能,本文基于Vue2.x進(jìn)行實(shí)現(xiàn),在此將實(shí)現(xiàn)過程進(jìn)行記錄與總結(jié),感興趣的可以了解一下
    2021-08-08

最新評(píng)論