7

我的表单中有一个用于移动版网站的 html5 日期选择器。我所有的文本输入都设置为 width:100% ,其父 td 设置为 padding-right:15px 以使其适合。这意味着我的字段的格式很好,并且当设备的方向发生变化时,我的字段总是会填满容器的一半。但是日期选择器的行为方式不同,有人可以帮忙吗?

形式:

<form method="get" action="home">
<table id="form">
<tr><td>
<input type="text" name="Title" class="tbox" placeholder="Title" />
</td><td>
<input type="text" name="Genre" class="tbox" placeholder="Genre" />
</td></tr>
<tr><td>
<input type="text" name="Location" class="tbox" placeholder="Location" />
</td><td>
<input type="date" name="Date" class="tbox" placeholder="DD/MM/YY" />
</td></tr>
<tr><td>
<input type="text" name="postcode" class="tbox" id="postcode" placeholder="Postcode" />
</td><td>
<input type="number" name="radius" class="tbox" placeholder="Mile Radius" /><br />
</td></tr>
</table>
<input type="submit" value="Search" />
</form>

相关CSS:

.tbox {
background-color: #a1c9ff;
border: 1px solid #003f94;
width: 100%;
height: 30px;
margin: 3px 2px;
padding: 0 5px;
border-radius: 15px;
font-size: 18px;
float: left;
}

table#form tr td {
overflow: hidden;
padding-right: 15px;
}
4

4 回答 4

10
.tbox {  
    min-width:100%; 
}  
table#form {    
    width:100%;  
}

对 table#form 使用宽度 100%,对 .tbox 使用 min-width:100%,我希望这可以解决您的问题。已更新 jsfiddle http://jsfiddle.net/brfQf/1/

于 2013-05-02T18:42:50.773 回答
7

这种 css 样式修复了移动 Safari 中的问题:

-webkit-appearance: none;

但是,它会改变输入外观。

于 2013-12-12T12:32:35.893 回答
0

看起来 .tbox 既有 100% 的宽度,又有填充。这将导致框延伸到其所需区域之外。要解决此问题,您可以尝试添加box-sizing: border-box;

.tbox {
    box-sizing: border-box;
    -moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box;
}
于 2013-05-02T18:05:43.937 回答
0

它可以使用固定值,因此,您可以使用此单元使其全屏显示:

width: 100vw

但是你需要考虑它的兼容性,这里有一个关于它的兼容性的链接:

http://caniuse.com/#search=vw

于 2016-01-22T09:33:50.400 回答