我相信这个问题以前也有人问过,但我似乎找不到答案。
我有以下标记:
<div id="foo">
<div id="bar">
here be dragons
</div>
</div>
我的愿望是使 foo 有 600px(width: 600px;)的宽度,并使酒吧有以下行为:
padding-left: 2px;
padding-right: 2px;
margin-left: 2px;
margin-right: 2px;
outerWidth: 100%;
换句话说,不是设置酒吧宽度为 592px我想设置酒吧的外部宽度为 100%,以便它被计算为 592px。这里的重要性在于,我可以将 foo 的宽度改为 800px,当渲染时,bar 将计算,而不必手动计算所有这些实例。
这在纯 CSS 中可能吗?
更有趣的是:
#bar是一个表呢?#bar是一个文本区呢?如果 #bar是一个输入呢?
如果 #foo是一个表单元格(td)怎么办? (这会改变问题还是问题相同?)
到目前为止,table#bar,input#bar已被讨论。我还没有看到一个很好的解决方案的 textarea # bar。我认为一个没有边框/边缘/填充的文本区域使用 div包裹可能会与 div样式一起工作,作为 textarea的边框。