DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> WEB網站前端 >> 前端技巧 >> chrome、firefox、IE中input輸入光標位置錯位解決方案
chrome、firefox、IE中input輸入光標位置錯位解決方案
編輯:前端技巧     
浏覽器中input輸入光標位置錯位詳解
在工作中遇到的問題,嘗試著找找解決方法,還真有呢!記下來方便自己方便他人吧

以前在項目裡碰到過一個問題
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{
height:16px;
padding:4px0px;
font-size:12px;
}
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved