最近用HTML5寫了個手機站,在測試的時候發如今蘋果手機上的一個問題。全部的按鈕都被了蘋果自帶的樣式給替換了。效果以下:css
可是正確的應該是醬紫滴!~html
只要在樣式裏面加一句css去掉iPhone、iPad的默認按鈕樣式就能夠了!~html5
1 input[type="button"], input[type="submit"], input[type="reset"] 2 { 3 -webkit-appearance: none; 4 } 5 6 textarea 7 { 8 -webkit-appearance: none; 9 }
若是還有圓角的問題,web
.button { border-radius: 0; }
咱們在寫表單的時候會發現一些瀏覽器對錶單賦予了默認的樣式,如在Chorme瀏覽器下,文本框及下拉選擇框當載入焦點時,都會出現發光的邊框,而且在火狐及谷歌瀏覽器下,多行文本框textarea還能夠自由拖拽拉大,另外還有在IE10下,當文本框輸入內容後,在文本框的右側會出現一個小叉叉,等等。無可置疑,這些效果是在用戶體驗上獲得了提高,但有些時候咱們並不須要這些默認的樣式,那怎麼辦呢?下面咱們就來分別看一下解決辦法。瀏覽器
一、去除Chrome等瀏覽器文本框默認發光邊框app
1 input:focus, textarea:focus 2 { 3 outline: none; 4 }
去掉高光樣式:測試
1 input:focus 2 { 3 -webkit-tap-highlight-color:rgba(0,0,0,0); 4 -webkit-user-modify:read-write-plaintext-only; 5 }
固然這樣以來,當文本框載入焦點時,全部瀏覽器下的文本框的邊框都不會有顏色上及樣式上的變化了,但咱們能夠從新根據本身的須要設置一下,如:spa
1 input:focus,textarea:focus { 2 outline: none; 3 border: 1px solid #f60; 4 }
二、去除IE10+瀏覽器文本框後面的小叉叉code
只需下面一句就ok了orm
1 input::-ms-clear { 2 display: none; 3 }
三、禁止多行文本框textarea拖拽
這樣按下面添加屬性多行文本框就不能拖拽放大縮小了:
1 textarea { 2 resize: none; 3 }
none 默認值
both 容許水平方向及垂直方向縮放
horizontal 只容許水平方向縮放
vertical 只容許垂直方向縮放
不只能夠針對textarea元素,對大多數元素都適用,如div等,在這裏不一一列舉,但與textarea不一樣的是,對div使用時須要加上一句overflow: auto;,也就是這樣纔有效果:
1 div { 2 resize: both; 3 overflow: auto; 4 }
哦了,以上就是關於去除表單瀏覽器默認樣式的一些內容。