div中图片为什么都重叠在一起了

本来应该是并排排列出来的,怎么都重叠在一起了我调试了发现是position:absolute的问题,为什么会这样... 本来应该是并排排列出来的 ,怎么都重叠在一起了
我调试了发现是position:absolute的问题 ,为什么会这样
展开
 我来答
学点笔记
2017-02-25 · 长路漫漫,分享为上。
学点笔记
采纳数:646 获赞数:1552

向TA提问 私信TA
展开全部

原因:

它们使用了相同的class .thumbnail ,position:absolute 是绝对定位,定义的值是多少,它的位置就固定在哪里,不会变动,所以才全部重贴在一起。

  1. 竖着排列:把position属性删掉就可以了,然后加点margin属性控制图片之间的上下间隔就可以了。

  2. 横着排列:如果坚持用position:应该使用相对定位。position:relative ,但是div默认的display:block,它们并不会在一行内并排显示,而是会竖着排列,想要横着排就得单独定义每一个div的样式,比较麻烦。想要实现横着并排,应该使用浮动float。大概像下面这样的:

/* .thumbnail*/
.thumbnail{
    float:left;
    width:20%;/*控制长度肯定会导致图片被裁剪,可以考虑使用display:inline 而不用定义长度,但不控制长度,就发发生跨行排列的情况,就看你怎么取舍了*/
    height:100px;/*加上高度使得布局整齐划一*/
}
/*给父元素增加一个class,清除float,否则图片会脱离文档流,给其他元素的布局带来影响*/
.clear:after{
    content:"";
    display:table;
    clear:both;
}
最后的HTML代码类似这样:
<div class="clear">
    <div class="thumbnail"><img ....></div>
</div>
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式