inline-block横向排列元素间隔原因及去除间隔方法
来源:互联网 发布:金门炮弹菜刀店淘宝 编辑:程序博客网 时间:2024/06/05 20:46
1.问题出现的场景:
需要实现上面的布局,三张图横向排列,左图靠左,右图靠右,中间图居于中间,且图与图之间有固定间隔,起初通过如下方式实现(为了说明方便,直接通过内联样式表现):
<div style="width:100%;overflow:auto;">
<div style="width:32%;float:left"><img style="width:100%" src=" "/></div>
<div style="width:32%;margin-left:34%"><img style="width:100%" src=""/></div>
<div style="width:32%;float:right"><img style="width:100%" src=" "/></div>
</div>
该实现方式,通过float来控制左右两侧图靠两边停放,中间图通过计算三张图总宽96%,剩余4%,这4%需要分为两部分来实现与左右两边图之间的间距,因此,对中间图通过margin-left:34%来控制其与左右两边图的间距为2%
2.不想通过float来实现,想通过控制每个img的容器div宽度为33.33333%来平分宽度,同时控制该容器具有padding值来达到中间图和两边图的间距,即:
<div style="width:100%">
<div style="width:33.33333%;display:inline-block;"><img style="width:100%" src=" "/></div>
<div style="width:33.33333%;display:inline-block;"><img style="width:100%" src=" "/></div>
<div style="width:33.33333%;display:inline-block;"><img style="width:100%" src=" "/></div>
</div>
这样实现后,发现三个img的容器div没有设置任何margin和padding,可是图片不能放在一行显示,第三个图被挤到第二行,且图和图之间是有间隔的,经过上网查找原因及解决方法,发现真正意义上的inline-block水平呈现的元素间,换行显示或空格分隔的情况下会有间距,最终使用了给最外部父容器设置font-size:0的方法来去除inline-block排列之间的间隔,同时空过属性padding和border-box来实现间距,最终实现方式为如下:
<div style="width:100%;font-size:0;">
<div style="width:33.33333%;display:inline-block;padding:2px;box-sizing:border-box"><img style="width:100%" src=" "/></div>
<div style="width:33.33333%;display:inline-block;padding:2px;box-sizing:border-box"><img style="width:100%" src=" "/></div>
<div style="width:33.33333%;display:inline-block;padding:2px;box-sizing:border-box"><img style="width:100%" src=" "/></div>
</div>
- inline-block横向排列元素间隔原因及去除间隔方法
- 去除display:inline-block下的元素间隔问题
- 去除inline-block元素间距的方法
- 在使用inline-block时遇到的元素之间的间隔
- 去除inline-block元素间距
- inline-block元素间间隙产生及去除详解
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- 去除inline-block元素间间距的N种方法
- Android Volley 之自定义Request
- ORA-01795: 列表中的最大表达式数为1000 解决方法
- CentOS 7 下安装JAVA
- 直接拿来用!最火的Android开源项目(一)
- 移动端css3提高动画性能探讨
- inline-block横向排列元素间隔原因及去除间隔方法
- 如何分割PDF文件的方法
- Android性能优化 浅析
- Intellij IDEA 14 自动生成 serialVersionUID
- 一个简单的javaweb项目包含的东西
- CLR内存管理之释放非托管资源
- 更改apache环境下项目存放目录htdocs
- sizeof
- iOS UITabBarController