1. 程式人生 > >修改 HTML5 input type date預設樣式

修改 HTML5 input type date預設樣式

出處 https://blog.csdn.net/byc233518/article/details/79168608

1.時間選擇的種類:
HTML程式碼: 
選擇日期:<input type="date" value="2017-06-01" /> 
選擇時間:<input type="time" value="22:52" /> 
選擇星期:<input type="week" /> 
選擇月份:<input type="month" />


2.對日期時間控制元件的樣式進行修改
目前WebKit下有如下9個偽元素可以改變日期控制元件的UI:


::-webkit-datetime-edit – 控制編輯區域的
::-webkit-datetime-edit-fields-wrapper – 控制年月日這個區域的
::-webkit-datetime-edit-text – 這是控制年月日之間的斜線或短橫線的
::-webkit-datetime-edit-month-field – 控制月份
::-webkit-datetime-edit-day-field – 控制具體日子
::-webkit-datetime-edit-year-field – 控制年文字, 如2017四個字母佔據的那片地方
::-webkit-inner-spin-button – 這是控制上下小箭頭的
::-webkit-calendar-picker-indicator – 這是控制下拉小箭頭的
::-webkit-clear-button –這是控制清除按鈕的
以下的囊括了date,datetime,week,time所用的偽元素: 
input::-webkit-datetime-edit{} 
input::-webkit-datetime-edit-fields-wrapper{} 
input::-webkit-datetime-edit-ampm-field{} 
input::-webkit-datetime-edit-day-field{} 
input::-webkit-datetime-edit-hour-field{} 
input::-webkit-datetime-edit-millisecond-field{} 
input::-webkit-datetime-edit-minute-field{} 
input::-webkit-datetime-edit-month-field{} 
input::-webkit-datetime-edit-second-field{} 
input::-webkit-datetime-edit-week-field{} 
input::-webkit-datetime-edit-year-field{} 
input::-webkit-datetime-edit-ampm-field:focus{} 
input::-webkit-datetime-edit-day-field:focus{} 
input::-webkit-datetime-edit-hour-field:focus{} 
input::-webkit-datetime-edit-millisecond-field:focus{} 
input::-webkit-datetime-edit-minute-field:focus{} 
input::-webkit-datetime-edit-month-field:focus{} 
input::-webkit-datetime-edit-second-field:focus{} 
input::-webkit-datetime-edit-week-field:focus{} 
input::-webkit-datetime-edit-year-field:focus{} 
input::-webkit-datetime-edit-year-field[disabled]{} 
input::-webkit-datetime-edit-month-field[disabled]{} 
input::-webkit-datetime-edit-week-field[disabled]{} 
input::-webkit-datetime-edit-day-field[disabled]{} 
input::-webkit-datetime-edit-ampm-field[disabled]{} 
input::-webkit-datetime-edit-hour-field[disabled]{} 
input::-webkit-datetime-edit-millisecond-field[disabled]{} 
input::-webkit-datetime-edit-minute-field[disabled]{} 
input::-webkit-datetime-edit-second-field[disabled]{} 
input::-webkit-datetime-edit-text{} 
input::-webkit-inner-spin-button{} 
input::-webkit-calendar-picker-indicator{} 
input::-webkit-calendar-picker-indicator:hover{}


date型別改變行高和高度那個小三角並不會根據大小調整,實在太醜了,所以決定把它隱藏掉。 
下面的css可以去掉date中上下小三角,但是保留input型別為number的小三角。 
input[type=date]::-webkit-inner-spin-button { visibility: hidden; } 
input型別為date的輸入框有以下屬性,可以根據自己的需求自行調整。 
::-webkit-datetime-edit { padding: 1px; background: url(../selection.gif); } 
::-webkit-datetime-edit-fields-wrapper { background-color: #eee; } 
::-webkit-datetime-edit-text { color: #4D90FE; padding: 0 .3em; } 
::-webkit-datetime-edit-year-field { color: purple; } 
::-webkit-datetime-edit-month-field { color: blue; } 
::-webkit-datetime-edit-day-field { color: green; } 
::-webkit-inner-spin-button { visibility: hidden; } 
::-webkit-calendar-picker-indicator { 
border: 1px solid #ccc; 
border-radius: 2px; 
box-shadow: inset 0 1px #fff, 0 1px #eee; 
background-color: #eee; 
background-image: -webkit-linear-gradient(top, #f0f0f0, #e6e6e6); 
color: #666; 
}