關於調整input里面的輸入光標大小


input輸入框用一個背景圖模擬,設置height和line-height一樣的高度,使里面的輸入文字能夠居中,

在FF下出現的情況是:點擊input時,輸入光標其實上跟input的height一樣高,但當開始輸入文字時,光標又變得跟文字一樣高,

chrome下光標跟input的height一樣高,

而IE下光標跟文字的大小一致。

input輸入框用一個背景圖模擬,設置height和line-height一樣的高度,使里面的輸入文字能夠居中,

FF下出現的情況是:點擊input時,輸入光標其實上跟input的height一樣高,但當開始輸入文字時,光標又變得跟文字一樣高,

chrome下光標跟input的height一樣高,

IE下光標跟文字的大小一致。

 

一直沒弄明白為什么這樣子,后來才知道原因所在。

初步結論如下:

IE:不管該行有沒有文字,光標高度與font-size一致。

FF:該行有文字時,光標高度與font-size一致。該行無文字時,光標高度與input的height一致。

Chrome:該行無文字時,光標高度與line-height一致;該行有文字時,光標高度從input頂部到文字底部(這兩種情況都是在有設定line-height的時候),如果沒有line-height,則是與font-size一致。

解決的方案:

input的height設定一個較小的高度,然后用padding去填充,基本上可以解決所有瀏覽器的問題

 

input{

box-sizing:content-box;
height: 16px;
padding: 4px 0px;
font-size: 12px;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM