【发布时间】:2017-03-17 13:47:07
【问题描述】:
我希望向下的第三个 div“内容”填充其容器,但在右侧留出 200 像素的空间以适应 fixedWidthButtons。
到目前为止,无论我设置什么,它都不会影响 div 的宽度。
如果我设置它的
display:block;,它会完全填满容器,并且按钮会被推出容器。如果我设置
display:inline-block;,容器将变为181.344 px 宽,并且无论我将right设置为什么都不会调整大小。
<div class="container" style="left:0; right:0; margin-bottom: 10px; height: 65px; display: block;">
<div class="panel" style="width:100%; display: block;">
<div class="contents" style="display:inline-block; position:relative; left: 0px; right: 200px;">
<div class="buttonTextAndCounterContainer" style="width:100%; display:block">
<div class="button" style="float:left; display:none;"></div>
<div class="textAndCounterContainer" style="display:block;">
<div class="counter" style="float:right; display:block;"></div>
<div class="text" style="width:100%; position:relative; left:0px; vertical-align:top; display:inline-block;"></div>
</div>
</div>
</div>
<div class="fixedWidthButtons" style="display:inline-block; float:right;"></div>
</div>
</div>
【问题讨论】:
-
如果我理解正确,您正试图通过赋予其左右属性来声明 div 的宽度。据我所知,您必须通过声明来声明 div 的宽度。 Left 和 Right 是定位声明。 (w3schools.com/CSSref/pr_pos_right.asp)
-
但我可以使用 right:0;左:0;将宽度设置为 100% 对吗?
-
@GlenPierce 仅当您使用
position: absolute;时。position: relative;的用途完全不同。