html - 输入元素填充其容器的剩余宽度

标签 html css

这个问题经常被问到,但到目前为止,没有任何解决方案对我们有所帮助。 form 的宽度设置为 100%,holder 的相对宽度为 10%,现在我想通过 input_edit 填充所有“自由”宽度。有人能帮我吗?谢谢!!

这是我的 HTML

<form>
    <textarea rows="4" name="in" class="input_edit"> </textarea>
    <div id="holder"></div>
</form>

还有我的 CSS

form {
width: 100%;
overflow: hidden;
} 
.input_edit {

-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box; 

width: auto;

background-color: transparent;
box-shadow: inset 0 0 5px rgba(0,0,0,0.4);
border: 5px solid #666; 
margin: 5px;
border-radius: 5px;
height: 60px;

float: left;

}
#holder { 
border: 5px dashed #666; 
border-radius: 5px;

margin: 5px;
width: 10%; 
height: 60px; 
float: right;
}

编辑:

holder 目前是 10%,但我希望它被隐藏,例如在移动设备上,所以我不能使用 100-10=90%,还有问题是 box-sizing

最佳答案

CSS3 width: calc(90% - 30px); 可以工作——但是支持它的浏览器数量非常有限。

下一个最佳解决方案可能是使用 jQuery(或 JavaScript)手动计算正确的宽度。像这样的东西:

 $(".input_edit").width($("form").width() - $("#holder").width() - 40);

然后每当 form 的宽度改变时更新它。

关于html - 输入元素填充其容器的剩余宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14668003/

相关文章:

css - IE 不支持图像的 height=auto,我应该使用什么?

javascript - 如何用还包含提交按钮的图像替换单选按钮

javascript - (CSS): can i trigger two of css events simultaneously by just triggering one event or the class name that two of events are included?

javascript - html文件正文中的外部CSS

html - 有没有一种方法可以突出显示焦点输入的字段/div?

html - 使用 CSS 动画文件上传按钮

html - 在 span 上延迟 1.0 不透明度,即使父 div 已经有 1.0 不透明度?

html - Bootstrap 导航栏在移动 View 中错误地将链接呈现为单独的行(Ruby on Rails 应用程序)- 如何修复?

html - Bootstrap 中的类别内联 block "buttons"

jquery - ajax 调用后重置 CSS 徽章内容