在iOS设备上设置原生html5日期和时间选择器的宽度

jde*_*lin 21 css html5 mobile-safari css3 ios

我正在使用我正在处理的网站的移动版本的type = date和type = time的原生日期和时间选择器.但输入字段不符合我的css.

桌面:

桌面

iOS设备: 在此输入图像描述

基本上我需要两个日期和时间输入来填充约50%的宽度.这是我正在使用的html和css:

<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;
    }
Run Code Online (Sandbox Code Playgroud)

如果有人能告诉我如何在使用原生日期/时间选择器时让占位符显示出来也很棒.

谢谢!

wan*_*kaf 40

只需将其添加到您的样式中即可

.arriveDate, .arriveTime  {
  -webkit-appearance: none;
  -moz-appearance: none;
}
Run Code Online (Sandbox Code Playgroud)

这背后的原因是IOS设备默认使用IOS按钮渲染输入


Car*_*lin 6

为避免丢失应用于其他输入框的任何样式元素,请使用textfield而不是none.

.arriveDate, .arriveTime  {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
}
Run Code Online (Sandbox Code Playgroud)

此外,如果您只是想让所有日期字段显示为文本框,但仍然像日期字段一样工作...

input[type="date"]
{
    display:block;
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    min-height: 1.2em;
}
Run Code Online (Sandbox Code Playgroud)