绝对位置。力顶:0

Arnaud Denoyelle

我正在为轮播实现图片选择器:

在此处输入图片说明

结构如下:

  • 一个<div>带有一些水平填充物的容器,用于放置人字形的备用空间。
  • A<div表示左侧的V形符号:position : absolute; left:0;
  • A<div代表右侧的V形:position : absolute; right:0;
  • 一个<div>包含图像white-space: nowrap; overflow:hidden

问题:如果我不top:0踩人字形,就会得到以下结果:

在此处输入图片说明

有人可以解释为什么吗?

这是JSFiddle

HTML:

<div class="container">
    <div class="img-container">
        <ul>
            <li><img src="http://placehold.it/150x100/EEE04A/ffffff?text=Image%201">
            </li><li><img src="http://placehold.it/150x100/5cb85c/ffffff?text=Image%202">
        </li><li><img src="http://placehold.it/150x100/5bc0de/ffffff?text=Image%203">
        </li><li><img src="http://placehold.it/150x100/f0ad4e/ffffff?text=Image%204">
        </li><li><img src="http://placehold.it/150x100/FF3167/ffffff?text=Image%205"></li>
        </ul>
    </div>
    <div class="button-left">
        <img src="http://placehold.it/50x100/cccccc/ffffff?text=<">
    </div>
    <div class="button-right">
        <img src="http://placehold.it/50x100/cccccc/ffffff?text=>">
    </div>
</div>

CSS:

ul {
    padding-left: 0;
    margin: 0;
    list-style:none;
}

.container {
    width: 450px;
    padding: 0 50px 0 50px;
    position: relative;
}

.img-container {
    overflow:hidden;
    white-space: nowrap;
}

.img-container li {
    display:inline-block;
}

.button-left {
    position: absolute;
    left: 0;
    /* top: 0; */
}

.button-right {
    position: absolute;
    right: 0;
    /* top: 0; */
}
上校

我认为其他答案绕开了真正的问题,那就是您有两排堆积的内容(幻灯片,以及在它们下面的箭头)。您可以通过绝对定位来解决此问题,但我认为将它们放在同一水平行开始会更清洁。一个简单的例子,使用float

JSFiddle

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章