兩種文件上傳按鈕的自定義

前端入坑紀(jì) 29

今天來個(gè)關(guān)于如題設(shè)定的內(nèi)容更新,簡(jiǎn)單的總結(jié)常用的兩種方式(確實(shí)是兩種,我沒數(shù)錯(cuò),請(qǐng)往下看)。

炒雞簡(jiǎn)單的效果圖

OK,first things first!項(xiàng)目鏈接

HTML 結(jié)構(gòu)
    <h2>方式一</h2>
    <div class="way1">
        <input type="file">
        <a href="javascript:;">文件上傳</a>
    </div>

    <h2>方式二 </h2>
     
    <div class="way2">
    <!--label包裹input,點(diǎn)了label相當(dāng)于點(diǎn)了input-->
        <label>文件上傳<input type="file" hidden></label>
    </div>

    <h2>方式三 </h2>
    <div class="way3">
      <!--這個(gè)算是上面的變種,label 加for屬性,指向input的id-->
        <label for="upfls">文件上傳</label><input id="upfls" type="file" hidden>
    </div>

用三個(gè)div分別包裹要用到的文件上傳按鈕和相應(yīng)的元素,很簡(jiǎn)單的構(gòu)成。

CSS結(jié)構(gòu)
        a {
            text-decoration: none;
            color: #333;
        }
        // 給每個(gè)div定義樣式,背景啊,寬高之類
        .way1,
        .way2,
        .way3 {
            width: 50%;
            position: relative;
            background: #ededed;
            border-radius: 4px;
            height: 45px;
            line-height: 45px;
        }
        
        // 第一種是絕對(duì)定位,把input file按鈕放在最上層,然后全透明
        .way1 input {
            display: block;
            width: 100%;
            height: 45px;
            opacity: 0;
            position: absolute;
            z-index: 3;
            top: 0;
            left: 0;
        }
        
        .way1 a {
            display: block;
            width: 100%;
            position: absolute;
            z-index: 2;
            top: 0;
            left: 0;
            text-align: center
        }
        

        // 第二種就是用label這個(gè)input的老搭檔,包裹input file
        .way2 label,
        .way3 label {
            display: block;
            width: 100%;
            height: 45px;
            text-align: center;
        }

所以就是這樣了,今天木有js,輕松一下!

好了,到此,本文告一段落!感謝您的閱讀!祝你身體健康,闔家幸福!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前端入坑紀(jì) 30 今天項(xiàng)目中碰到如題的效果。講真,我的內(nèi)心是拒絕的。原因還是input file 文件上傳 這個(gè)按...
    kerush閱讀 455評(píng)論 12 7
  • 前言: 1.HTML5的發(fā)展非常迅速,可以說已經(jīng)是前端開發(fā)人員的標(biāo)配,在電商類型的APP中更是運(yùn)用廣泛,這個(gè)系列的...
    珍此良辰閱讀 1,993評(píng)論 2 15
  • 簡(jiǎn)介網(wǎng)絡(luò)瀏覽器很可能是使用最廣的軟件。在這篇入門文章中,我將會(huì)介紹它們的幕后工作原理。我們會(huì)了解到,從您在地址欄輸...
    wengjq閱讀 2,312評(píng)論 2 15
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,153評(píng)論 1 92
  • 首先說明,看香山最佳時(shí)期就是10月末11月初。聯(lián)票(包含碧云寺)15軟妹幣,門票10幣,學(xué)生證等等半價(jià)。 山腳有公...
    張墨一閱讀 879評(píng)論 2 1

友情鏈接更多精彩內(nèi)容