以下是仅使用CSS的两种解决方案
设置flex:1输入以填充剩余宽度
.container {
width: 500px;
padding: 40px;
border: 1px solid black;
}
label {
display: inline-block;
padding: 8px 10px 0 0;
}
p {
display: flex;
}
input {
-webkit-box-shadow: -2px 2px 10px 0px rgba(50, 50, 50, 0.22);
-moz-box-shadow: -2px 2px 10px 0px rgba(50, 50, 50, 0.22);
box-shadow: -2px 2px 10px 0px rgba(50, 50, 50, 0.22);
border: 0;
padding: 10px;
flex: 1;
}Run Code Online (Sandbox Code Playgroud)
<div class="container">
<form>
<p>
<label>*First Name</label>
<input type="text" />
</p>
<p>
<label>*Last Name</label>
<input type="text" />
</p>
<p>
<label>*Street Address</label>
<input type="text" />
</p>
<p>
<label>Address Line 2</label>
<input type="text" />
</p>
</form>
</div>Run Code Online (Sandbox Code Playgroud)
使用内在大小调整,通过设置标签宽度的值min-content:
label {
display: table-cell;
width: -webkit-min-content;
width: -moz-min-content;
width: min-content;
}
Run Code Online (Sandbox Code Playgroud)
浏览器对Intrinsic Sizing的支持实际上相当不错 - 除IE之外 - 目前还不支持这些值.
(编辑:这个特殊的例子似乎只适用于Firefox而不是Chrome,我不知道为什么会这样.)
| 归档时间: |
|
| 查看次数: |
2194 次 |
| 最近记录: |