我遇到了一个我似乎无法解决的讨厌的 CSS 问题。我想将包装器放置在具有left
属性的容器内(在正方向上;由于某种原因,负方向似乎起作用),而里面的内容却没有开始包装。这是以下 HTML 和 CSS的jsfiddle 。
<div id="container">
<div id="wrapper">
<div id="one"></div>
<div id="two"></div>
</div>
</div>
#container {
width: 200px;
height: 200px;
position: relative;
border: 1px solid #000;
/*white-space: nowrap;*//*Works for chrome, but not for firefox*/
}
#wrapper {
position: absolute;
/*left: 100px;*/
}
#one, #two {
width: 80px;
height: 80px;
background-color: #000;
margin: 10px;
float: left;
}
如果您取消注释left: 100px;
,您会注意到两个框被移动但也被包裹。在 chrome 中,这可以white-space: nowrap;
在容器上使用来修复。但是,它不适用于 Firefox,并且还会影响文本内容。我尝试position: relative;
从容器中删除并使用 Javascript 计算正确的偏移量,但这有点不方便。
编辑:它确实适用于 CSS3,transform: translateX(100px)
但我仍然更喜欢这个left
变体。