I'm using the native date and time pickers with type=date and type=time for the mobile version of a website I'm working on. The input fields are not respecting the css I have, though.
Desktop:
iOS devices:
Essentially I need the two date and time inputs to fill ~50% of the width. This is the html and css I'm using:
<div class="arriveWrapper"> <div class="arriveDateWrapper fieldWrapper"> <input class="arriveDate" name="arriveDate" type="date" placeholder="What date?" /> </div> <div class="arriveTimeWrapper fieldWrapper"> <input class="arriveTime" name="arriveTime" type="time" placeholder="What time?" /> </div> <div class="clear"></div> </div> .arriveDateWrapper { width: 49%; margin-right: 2%; float: left; position: relative; } .arriveDate { width: 100%; height: 28px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } .arriveTimeWrapper { width: 49%; float: left; } .arriveTime { width: 100%; height: 28px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
If anyone can tell me how to get the placeholders to show up when using the native date/time pickers that would be great, as well.
Thanks!
To set and get the input type date in dd-mm-yyyy format we will use <input> type attribute. The <input> type attribute is used to define a date picker or control field. In this attribute, you can set the range from which day-month-year to which day-month-year date can be selected from.
Currently, there is no cross browser, script-free way of styling a native date picker. As for what's going on inside WHATWG/W3C... If this functionality does emerge, it will likely be under the CSS-UI standard or some Shadow DOM-related standard.
The <input type="date"> defines a date picker. The resulting value includes the year, month, and day. Tip: Always add the <label> tag for best accessibility practices!
Just add this to your styles
.arriveDate, .arriveTime { -webkit-appearance: none; -moz-appearance: none; }
The reason behind this is that IOS device render by default the inputs using the IOS buttons
To avoid losing any style elements applied to other input boxes, use textfield instead of none.
.arriveDate, .arriveTime { -webkit-appearance: textfield; -moz-appearance: textfield; }
Also, if you just want to make all the date fields appear like textboxes but still work like date fields...
input[type="date"] { display:block; -webkit-appearance: textfield; -moz-appearance: textfield; min-height: 1.2em; }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With