使用bootstrap 3,如何创建一行均匀间隔的徽标?徽标是简单的JPG图像,我目前正在使用这样的代码:
<table class="logotable text-center">
<tr>
<td>
<img ..>
</td>
</tr>
</table>
.logotable {
width: 100%
}
尽管这在PC上看起来很棒,但它不能转换为小型屏幕设备的堆叠形式。
无论我尝试什么都行不通(徽标总是以堆叠的形式出现)
div.row-fluid
并在div.row
内添加每个图片,但这不起作用答案 0 :(得分:5)
您需要一个col-[breakpoint]-[columns]
以及row
div,这可能就是您尝试它时无效的原因。
除此之外,在Boostrap 3中,你需要在图像上使用img-responsive
类来使它们具有响应性。
row-fluid
用于Bootstrap 2我相信并在Bootstrap 3中弃用。
我不确定你想要在一行上有多少个徽标,但你可以做以下的事情,在一行上有3张图片:
<div class="row">
<div class="col-md-4">
<img class="img-responsive" alt="" src="/path/to/image" />
</div>
<div class="col-md-4">
<img class="img-responsive" alt="" src="/path/to/image" />
</div>
<div class="col-md-4">
<img class="img-responsive" alt="" src="/path/to/image" />
</div>
</div>
修改强>
为了避免硬编码,你可以像这样使用flexbox:
<强> HTML 强>
<div class="flex-container">
<div class="flex-item">
<img src="" alt="1" class="img-responsive" />
</div>
<div class="flex-item">
<img src="" alt="2" class="img-responsive" />
</div>
<div class="flex-item">
<img src="" alt="3" class="img-responsive" />
</div>
<div class="flex-item">
<img src="" alt="4" class="img-responsive" />
</div>
<div class="flex-item">
<img src="" alt="5"class="img-responsive" />
</div>
</div>
<强> CSS 强>
.flex-container {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
padding: 10px;
}
/* to center flex-items */
.flex-item {
margin: auto;
}
Non-Centered Items Fiddle | Centered Items Fiddle
<强>更新强>
要垂直居中Flexbox项目,只需向容器添加高度:
.flex-container {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
height: 200px;
background: red;
}
.flex-item {
margin: auto;
}
答案 1 :(得分:1)
有什么要求?每行有多少个徽标?那是应该集中/合理吗?
如果没有,你可以用类col-xs-3 col-sm-2 col-md-1
编写/生成div,例如包含每个图标的div,你将拥有你想要的东西。
通过这些课程,您可以在移动设备上获得每行4个图标,在平板电脑上获得6个图标,否则为12个。
如果还不够,请告诉我
编辑:
每行5个图标,网格每行12列,让它居中并跳过第1列。所以我们得到:
<div class="row">
<div class="col-sm-offset-1 col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
</div>
<div class="row clearfix">
<div class="col-sm-offset-1 col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
<div class="col-sm-2 col-xs-12"><img ... /></div>
</div>
一些技术(而不是我掌握的)点:
col-sm-*
适用于平板电脑:因此此代码每行显示5个图标,从平板电脑到大型桌面。
col-xs-*
:移动设备,每行1个图标
clearfix
:我不确定这一点,但如果您只用12列结束最后一个容器,那么它非常有用,所以最好在第二个div中使用它。你甚至可以从1 div中获得它,它不会像我所知的那样引起麻烦。
如果行的划分会产生一些额外的空间,您可以使用一些样式属性或CSS类来删除它。