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