[英]How can I set the rest of width to an input?
这是我的代码:
input, div{ border:1px solid; margin: 20px 30px 0px 30px; }
<input /> <div> something </div>
我要做的就是使input
的宽度与div
相同。
注意两者都不display: block;
width: 100%;
将无法按预期工作。
您可以在父元素上使用display: flex
,在这种情况下,如果使用flex-direction: column
,默认情况下body
和flexbox会使两个项目的宽度相同
body { display: flex; flex-direction: column; } input, div{ border:1px solid; margin: 20px 30px 0px 30px; }
<input type="text"> <div> something </div>
或者,您可以使用calc
和hardcode width-margin输入元素。
input, div{ border:1px solid; margin: 20px 30px 0px 30px; } input { display: block; width: calc(100% - 60px); padding-left: 0; padding-right: 0; }
<input type="text"> <div> something </div>
或者,您可以添加包装器并为其设置margin
属性(甚至padding
) :
* { box-sizing: border-box; } div { border: 1px solid; margin: 20px 30px 0px 30px; } .input_wrapper { margin: 20px 30px 0px 30px; } input { border: 1px solid; width: 100%; }
<div class="input_wrapper"> <input type="text"> </div> <div> something </div>
您可以尝试object-fit: fill;
看到这个适合
基本上,如果您完全100%完成并添加边框,则它将超过100%。 您可以做的是添加边框插图,如下所示:
<input />
<div>
something
</div>
input, div{
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
width: 100%;
height: 10px;
border: 1px solid #000;
margin: 20px 0px;
}
看到这里: https : //jsfiddle.net/b5yguuaw/1/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.