@d.blizen/datepicker-nash-travel
Version:
A vue component of datepicker, includes DatePicker, DatetimePicker, DateRangePicker, TimePicker
227 lines (226 loc) • 16.2 kB
CSS
.datepicker, .date-range-picker, .timepicker, .datetime-picker {
position: relative;
font-size: 14px;
color: #444;
user-select: none;
/* scrollbar css */
/* vue-popper css */
}
.datepicker .scrollbar-wrap .scrollbar, .date-range-picker .scrollbar-wrap .scrollbar, .timepicker .scrollbar-wrap .scrollbar, .datetime-picker .scrollbar-wrap .scrollbar {
width: 4px ;
border-radius: 2px ;
background: #eee ;
}
.datepicker .vue-popper, .date-range-picker .vue-popper, .timepicker .vue-popper, .datetime-picker .vue-popper {
border-color: rgba(194, 204, 220, 0.5) ;
}
.datepicker .vue-popper[x-placement^='bottom'] .arrow, .date-range-picker .vue-popper[x-placement^='bottom'] .arrow, .timepicker .vue-popper[x-placement^='bottom'] .arrow, .datetime-picker .vue-popper[x-placement^='bottom'] .arrow {
border-bottom-color: rgba(194, 204, 220, 0.5) ;
}
.datepicker .vue-popper[x-placement^='top'] .arrow, .date-range-picker .vue-popper[x-placement^='top'] .arrow, .timepicker .vue-popper[x-placement^='top'] .arrow, .datetime-picker .vue-popper[x-placement^='top'] .arrow {
border-top-color: rgba(194, 204, 220, 0.5) ;
}
.datepicker *, .date-range-picker *, .timepicker *, .datetime-picker * {
box-sizing: border-box;
outline: none ;
}
.datepicker .input-wrapper, .date-range-picker .input-wrapper, .timepicker .input-wrapper, .datetime-picker .input-wrapper {
display: flex;
align-items: center;
width: 100%;
height: 100%;
border: 1px solid #c2ccdc;
border-radius: 3px;
}
.datepicker .input-wrapper.focus, .date-range-picker .input-wrapper.focus, .timepicker .input-wrapper.focus, .datetime-picker .input-wrapper.focus {
border-color: rgba(57, 192, 134, 0.7);
box-shadow: 0 0 1px rgba(57, 192, 134, 0.3);
}
.datepicker .input-wrapper.focus .icon-clear, .date-range-picker .input-wrapper.focus .icon-clear, .timepicker .input-wrapper.focus .icon-clear, .datetime-picker .input-wrapper.focus .icon-clear, .datepicker .input-wrapper:hover .icon-clear, .date-range-picker .input-wrapper:hover .icon-clear, .timepicker .input-wrapper:hover .icon-clear, .datetime-picker .input-wrapper:hover .icon-clear {
pointer-events: all;
opacity: 1;
cursor: pointer;
}
.datepicker .prefix, .date-range-picker .prefix, .timepicker .prefix, .datetime-picker .prefix, .datepicker .suffix, .date-range-picker .suffix, .timepicker .suffix, .datetime-picker .suffix {
display: flex;
align-items: center;
padding: 0 5px;
}
.datepicker .icon-clear, .date-range-picker .icon-clear, .timepicker .icon-clear, .datetime-picker .icon-clear {
display: flex;
align-items: center;
justify-content: center;
padding: 0.1em;
font-size: 0.8em;
color: #999;
pointer-events: none;
opacity: 0;
}
.datepicker .icon-date, .date-range-picker .icon-date, .timepicker .icon-date, .datetime-picker .icon-date, .datepicker .icon-time, .date-range-picker .icon-time, .timepicker .icon-time, .datetime-picker .icon-time, .datepicker .icon-del, .date-range-picker .icon-del, .timepicker .icon-del, .datetime-picker .icon-del {
width: 1em;
height: 1em;
}
.datepicker .vue-input, .date-range-picker .vue-input, .timepicker .vue-input, .datetime-picker .vue-input {
display: block;
height: 100%;
flex: 1;
padding: 0;
border: none;
}
.datepicker .vue-input::placeholder, .date-range-picker .vue-input::placeholder, .timepicker .vue-input::placeholder, .datetime-picker .vue-input::placeholder {
color: #ccc;
}
.datepicker .vue-input.hidden, .date-range-picker .vue-input.hidden, .timepicker .vue-input.hidden, .datetime-picker .vue-input.hidden {
width: 0;
flex: 0;
}
.datepicker .picker, .date-range-picker .picker, .timepicker .picker, .datetime-picker .picker {
display: block;
z-index: 10000;
box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
}
.datepicker .picker .picker-content, .date-range-picker .picker .picker-content, .timepicker .picker .picker-content, .datetime-picker .picker .picker-content {
width: 300px;
padding: 10px;
}
.datepicker .picker .picker-head, .date-range-picker .picker .picker-head, .timepicker .picker .picker-head, .datetime-picker .picker .picker-head {
padding: 0 0 10px;
text-align: center;
}
.datepicker .picker .picker-head .picker-h span, .date-range-picker .picker .picker-head .picker-h span, .timepicker .picker .picker-head .picker-h span, .datetime-picker .picker .picker-head .picker-h span {
font-size: 16px;
}
.datepicker .picker .picker-head .picker-h .year, .date-range-picker .picker .picker-head .picker-h .year, .timepicker .picker .picker-head .picker-h .year, .datetime-picker .picker .picker-head .picker-h .year, .datepicker .picker .picker-head .picker-h .month, .date-range-picker .picker .picker-head .picker-h .month, .timepicker .picker .picker-head .picker-h .month, .datetime-picker .picker .picker-head .picker-h .month, .datepicker .picker .picker-head .picker-h .date, .date-range-picker .picker .picker-head .picker-h .date, .timepicker .picker .picker-head .picker-h .date, .datetime-picker .picker .picker-head .picker-h .date {
cursor: pointer;
}
.datepicker .picker .picker-head .picker-h .year:hover, .date-range-picker .picker .picker-head .picker-h .year:hover, .timepicker .picker .picker-head .picker-h .year:hover, .datetime-picker .picker .picker-head .picker-h .year:hover, .datepicker .picker .picker-head .picker-h .month:hover, .date-range-picker .picker .picker-head .picker-h .month:hover, .timepicker .picker .picker-head .picker-h .month:hover, .datetime-picker .picker .picker-head .picker-h .month:hover, .datepicker .picker .picker-head .picker-h .date:hover, .date-range-picker .picker .picker-head .picker-h .date:hover, .timepicker .picker .picker-head .picker-h .date:hover, .datetime-picker .picker .picker-head .picker-h .date:hover {
color: #39c086;
}
.datepicker .picker .picker-head .prev, .date-range-picker .picker .picker-head .prev, .timepicker .picker .picker-head .prev, .datetime-picker .picker .picker-head .prev, .datepicker .picker .picker-head .next, .date-range-picker .picker .picker-head .next, .timepicker .picker .picker-head .next, .datetime-picker .picker .picker-head .next {
padding: 0 5px;
border: none;
background: transparent;
cursor: pointer;
}
.datepicker .picker .picker-head .prev.disabled, .date-range-picker .picker .picker-head .prev.disabled, .timepicker .picker .picker-head .prev.disabled, .datetime-picker .picker .picker-head .prev.disabled, .datepicker .picker .picker-head .next.disabled, .date-range-picker .picker .picker-head .next.disabled, .timepicker .picker .picker-head .next.disabled, .datetime-picker .picker .picker-head .next.disabled {
color: #ccc;
cursor: default;
}
.datepicker .picker .picker-head .prev, .date-range-picker .picker .picker-head .prev, .timepicker .picker .picker-head .prev, .datetime-picker .picker .picker-head .prev {
float: left;
}
.datepicker .picker .picker-head .next, .date-range-picker .picker .picker-head .next, .timepicker .picker .picker-head .next, .datetime-picker .picker .picker-head .next {
float: right;
}
.datepicker .picker .picker-items, .date-range-picker .picker .picker-items, .timepicker .picker .picker-items, .datetime-picker .picker .picker-items {
overflow: hidden;
}
.datepicker .picker .picker-items .row-item, .date-range-picker .picker .picker-items .row-item, .timepicker .picker .picker-items .row-item, .datetime-picker .picker .picker-items .row-item {
line-height: 30px;
overflow: hidden;
}
.datepicker .picker .picker-items .row-item.h, .date-range-picker .picker .picker-items .row-item.h, .timepicker .picker .picker-items .row-item.h, .datetime-picker .picker .picker-items .row-item.h {
border-bottom: 1px solid #f3f5f8;
}
.datepicker .picker .picker-items .row-item.h .item, .date-range-picker .picker .picker-items .row-item.h .item, .timepicker .picker .picker-items .row-item.h .item, .datetime-picker .picker .picker-items .row-item.h .item {
font-size: 12px;
color: #999 ;
}
.datepicker .picker .picker-items .row-item.line, .date-range-picker .picker .picker-items .row-item.line, .timepicker .picker .picker-items .row-item.line, .datetime-picker .picker .picker-items .row-item.line {
display: block;
float: left;
}
.datepicker .picker .picker-items .row-item.line .item, .date-range-picker .picker .picker-items .row-item.line .item, .timepicker .picker .picker-items .row-item.line .item, .datetime-picker .picker .picker-items .row-item.line .item {
width: 100%;
display: block;
}
.datepicker .picker .picker-items .row-item .item, .date-range-picker .picker .picker-items .row-item .item, .timepicker .picker .picker-items .row-item .item, .datetime-picker .picker .picker-items .row-item .item {
display: inline-block;
line-height: inherit;
padding: 0 8px;
text-align: center;
cursor: pointer;
}
.datepicker .picker .picker-items .row-item .item.date, .date-range-picker .picker .picker-items .row-item .item.date, .timepicker .picker .picker-items .row-item .item.date, .datetime-picker .picker .picker-items .row-item .item.date {
width: calc(100% / 7);
}
.datepicker .picker .picker-items .row-item .item.month, .date-range-picker .picker .picker-items .row-item .item.month, .timepicker .picker .picker-items .row-item .item.month, .datetime-picker .picker .picker-items .row-item .item.month, .datepicker .picker .picker-items .row-item .item.year, .date-range-picker .picker .picker-items .row-item .item.year, .timepicker .picker .picker-items .row-item .item.year, .datetime-picker .picker .picker-items .row-item .item.year {
width: calc(99% / 3);
}
.datepicker .picker .picker-items .row-item .item:hover, .date-range-picker .picker .picker-items .row-item .item:hover, .timepicker .picker .picker-items .row-item .item:hover, .datetime-picker .picker .picker-items .row-item .item:hover {
color: #39c086;
}
.datepicker .picker .picker-items .row-item .item.not-in-month, .date-range-picker .picker .picker-items .row-item .item.not-in-month, .timepicker .picker .picker-items .row-item .item.not-in-month, .datetime-picker .picker .picker-items .row-item .item.not-in-month, .datepicker .picker .picker-items .row-item .item.disabled, .date-range-picker .picker .picker-items .row-item .item.disabled, .timepicker .picker .picker-items .row-item .item.disabled, .datetime-picker .picker .picker-items .row-item .item.disabled {
color: #ccc ;
}
.datepicker .picker .picker-items .row-item .item.not-in-month:before, .date-range-picker .picker .picker-items .row-item .item.not-in-month:before, .timepicker .picker .picker-items .row-item .item.not-in-month:before, .datetime-picker .picker .picker-items .row-item .item.not-in-month:before, .datepicker .picker .picker-items .row-item .item.disabled:before, .date-range-picker .picker .picker-items .row-item .item.disabled:before, .timepicker .picker .picker-items .row-item .item.disabled:before, .datetime-picker .picker .picker-items .row-item .item.disabled:before {
content: none ;
}
.datepicker .picker .picker-items .row-item .item.disabled, .date-range-picker .picker .picker-items .row-item .item.disabled, .timepicker .picker .picker-items .row-item .item.disabled, .datetime-picker .picker .picker-items .row-item .item.disabled {
cursor: no-drop ;
}
.datepicker .picker .picker-items .row-item .item.selected, .date-range-picker .picker .picker-items .row-item .item.selected, .timepicker .picker .picker-items .row-item .item.selected, .datetime-picker .picker .picker-items .row-item .item.selected, .datepicker .picker .picker-items .row-item .item.is-now, .date-range-picker .picker .picker-items .row-item .item.is-now, .timepicker .picker .picker-items .row-item .item.is-now, .datetime-picker .picker .picker-items .row-item .item.is-now, .datepicker .picker .picker-items .row-item .item.is-in-range, .date-range-picker .picker .picker-items .row-item .item.is-in-range, .timepicker .picker .picker-items .row-item .item.is-in-range, .datetime-picker .picker .picker-items .row-item .item.is-in-range {
position: relative;
}
.datepicker .picker .picker-items .row-item .item.selected:before, .date-range-picker .picker .picker-items .row-item .item.selected:before, .timepicker .picker .picker-items .row-item .item.selected:before, .datetime-picker .picker .picker-items .row-item .item.selected:before, .datepicker .picker .picker-items .row-item .item.is-now:before, .date-range-picker .picker .picker-items .row-item .item.is-now:before, .timepicker .picker .picker-items .row-item .item.is-now:before, .datetime-picker .picker .picker-items .row-item .item.is-now:before, .datepicker .picker .picker-items .row-item .item.is-in-range:before, .date-range-picker .picker .picker-items .row-item .item.is-in-range:before, .timepicker .picker .picker-items .row-item .item.is-in-range:before, .datetime-picker .picker .picker-items .row-item .item.is-in-range:before {
content: '';
box-sizing: border-box;
position: absolute;
left: 50%;
top: 50%;
z-index: -1;
width: 100%;
max-width: 40px;
height: 24px;
border-radius: 3px;
border: 1px solid #39c086;
transform: translate(-50%, -50%);
}
.datepicker .picker .picker-items .row-item .item.is-now, .date-range-picker .picker .picker-items .row-item .item.is-now, .timepicker .picker .picker-items .row-item .item.is-now, .datetime-picker .picker .picker-items .row-item .item.is-now {
color: #39c086;
}
.datepicker .picker .picker-items .row-item .item.is-now:before, .date-range-picker .picker .picker-items .row-item .item.is-now:before, .timepicker .picker .picker-items .row-item .item.is-now:before, .datetime-picker .picker .picker-items .row-item .item.is-now:before {
content: '';
border: 1px solid rgba(57, 192, 134, 0.2);
background: none;
}
.datepicker .picker .picker-items .row-item .item.is-now.disabled, .date-range-picker .picker .picker-items .row-item .item.is-now.disabled, .timepicker .picker .picker-items .row-item .item.is-now.disabled, .datetime-picker .picker .picker-items .row-item .item.is-now.disabled {
opacity: 0.8;
color: #39c086 ;
}
.datepicker .picker .picker-items .row-item .item.is-now.disabled:before, .date-range-picker .picker .picker-items .row-item .item.is-now.disabled:before, .timepicker .picker .picker-items .row-item .item.is-now.disabled:before, .datetime-picker .picker .picker-items .row-item .item.is-now.disabled:before {
content: '' ;
}
.datepicker .picker .picker-items .row-item .item.is-in-range:before, .date-range-picker .picker .picker-items .row-item .item.is-in-range:before, .timepicker .picker .picker-items .row-item .item.is-in-range:before, .datetime-picker .picker .picker-items .row-item .item.is-in-range:before {
max-width: none;
border-radius: 0;
border: none;
background: rgba(57, 192, 134, 0.15);
}
.datepicker .picker .picker-items .row-item .item.selected, .date-range-picker .picker .picker-items .row-item .item.selected, .timepicker .picker .picker-items .row-item .item.selected, .datetime-picker .picker .picker-items .row-item .item.selected {
color: #fff;
}
.datepicker .picker .picker-items .row-item .item.selected:before, .date-range-picker .picker .picker-items .row-item .item.selected:before, .timepicker .picker .picker-items .row-item .item.selected:before, .datetime-picker .picker .picker-items .row-item .item.selected:before {
max-width: 40px;
border-radius: 3px;
background: #39c086;
}
.datepicker .picker .btns, .date-range-picker .picker .btns, .timepicker .picker .btns, .datetime-picker .picker .btns {
padding: 10px 0 0;
border-top: 1px solid #f3f5f8;
overflow: hidden;
}
.datepicker .picker .btns .btn, .date-range-picker .picker .btns .btn, .timepicker .picker .btns .btn, .datetime-picker .picker .btns .btn {
float: right;
padding: 0 4px;
margin: 0 0 0 10px;
font-size: 12px;
color: #39c086;
cursor: pointer;
}
.datepicker .range-picker, .date-range-picker .range-picker, .timepicker .range-picker, .datetime-picker .range-picker {
display: flex;
}
.date-range-picker .vue-input {
text-align: center;
}