当前位置: 首页 > Web前端 > HTML

div+css图片列表布局(二)

时间:2023-04-02 20:28:32 HTML

本文假设你已经阅读了我之前的文章div+css图片列表布局(一),接下来我们来实现一个更复杂的图片列表布局。以下列样式为例。为方便起见,我只列出了display:inline-block布局示例。如前文所述,第一步是为父容器li元素定义一个宽度{list-style:none;显示:内联块;宽度:33.3%;/*三列图片排列*/text-align:center;/*内容居中*/overflow:hidden;/*超出隐藏*/vertical-align:bottom;/*contentbottomaligned*/}图片列表的行和列之间有空隙,我们用一个容器div.content包裹内容,设置.content的宽度为父容器的80%,并填满向下(paddind)大约20px.content{width:80%;填充:10px0;overflow:hidden;}

  • ...
  • 注意每张图片都有白色的背景和边框,我们可以在图片上再加一层容器。img-wrap{填充:10px;背景色:#fff;border:1pxsolid#ccc;
  • 的效果如下因为我们的图片素材尺寸相差太大,所以显得高低不均。如果需要对齐,可以在定义display的父容器中使用:inline-block;;垂直对齐:底部。这里为了统一高度,我们需要在img标签中再添加一层div来限制高度。.img-box{高度:120px;溢出:隐藏;}.img-boximg{位置:相对;宽度:100%;顶部:50%;转换:translateY(-50%);}
  • 效果如下注意,一般不建议直接在img元素上设置高宽,因为如果图片大小不固定,它会导致图像变形。可以固定宽度,自适应高度(或者固定高度,自适应宽度)。然后在img元素外层放一个容器,固定宽高,设置溢出隐藏(overflow:hidden;)。有时UI会要求您保持行和列之间的间距严格相同。这里行和列之间的间距是不同的。为什么?然后需要修改.content的样式,不定义宽度,周围空白间距表示使用padding,设置box-sizing属性为border-box。ok,完美~接下来加上title.title{padding-top:12px;字体大小:12px;颜色:#454545;}
  • 图片标题
  • 效果如图。详细代码参考:http://runjs.cn/detail/ynt81wax上一篇:div+css图片列表布局(一)