【发布时间】:2015-08-03 16:19:39
【问题描述】:
考虑一下:
<div class="container">
<div class="row">
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
<div class="col-xs-2"></div>
</div>
</div>
还有这个:
.col-xs-2 {
height: 20px;
border: 1px solid black;
}
.col-xs-2:hover {
height: 25px;
}
(或者您可以访问this page)
最初,所有列的高度相同,并且它们显示为两行项目,一个在另一个之下。到目前为止一切顺利。
将鼠标悬停在 div 上时,它的高度会增加 5px,并且新行从该 div 之后而不是开头开始。它喜欢该行的其余部分留出 5px 空间(或任何需要的空间)并从头开始。
注意:即使 div 的大小最初大于其所在行中其他 div 的大小,也会发生这种情况。
到目前为止,我已经尝试设置 margin-top、padding-top 和 float:left,但没有取得多大成功。
PS:我每行有超过 12 列,因为元素是动态生成的,这可以在不同大小的设备上无缝运行。至少在有人将鼠标悬停在 div 上之前。
【问题讨论】:
-
您不需要修改带有样式的网格元素。我几乎从不将自定义类或其他修饰符应用于容器、行或列。修改网格内的元素,并为初始加载时的悬停效果留出空间。移动整个页面的悬停效果让访问者感到疲倦和烦人。
-
@isherwood - 哈哈!是的,我只是注意到,即使在进行了适当的更改之后,这样做也感觉不是很好。我要从一开始就让事情变得可见!
标签: html css twitter-bootstrap