这里我有一个元素#searchField
,它占据了容器宽度的80%。它包含元素#searchInput
和#mic
。
#searchInput
的宽度约为63%。我想要的是它占据其容器的100%,#searchField
然后使用css3' s calc()
我会从中减去34px,因此#mic
可以适合。< / p>
但是当我将#searchInput
设为width:100%;
时,它占据#searchField
宽度的100%以上。
如何让#searchInput
以适当的方式占据#searchField
宽度的100%。为什么width:100%;
没有工作?
最终,我的计划是在支持语音识别时#searchInput
设置calc(100% - 34px);
样式,如果不支持,请隐藏#mic
并仅执行#searchField
的100%。< / p>
以下是页面:https://googledrive.com/host/0BwJVaMrY8QdcOUVUWFM4UHFzWms/index.html
答案 0 :(得分:1)
将#searchField设置为position:relative。
答案 1 :(得分:1)
只是看看你的代码,发现了一些错误的东西。
要做得对,请遵循以下几点:
form
,删除position: absolute;
form
,请添加margin: -16px auto 0;
#searchField
移除width: 80%
,您也不需要添加position: relative
,因为您已将其应用于form
#searchInput
,padding
应为0 0 0 42px
,padding-left: 42px
。不要在右侧给出任何padding
。width: calc(100% - 34px)
上使用#searchInput
,但它尚未成功,原因是,您已对其应用padding-left: 42px
。因此,您应该添加34px + 42px,使其总计为width: calc(100% - 76px)
。我希望这会有所帮助。 :)