html - 具有绝对定位元素的列之间出现意外间隙

标签 html css multiple-columns absolute

我正在尝试制作一条包含 3 列的行以具有显示元素描述的悬停效果。

在谷歌浏览器上,当我将鼠标悬停在第一个元素上时,第二列和第三列之间出现空隙。在 Mozilla Firefox 上,当它是 4 或 2 列而不是三列时,会发生同样的事情,最后两个元素之间会出现间隙。

标记

<div class="row row-3">
    <div class="column">
        <img src="http://placehold.it/800x650" alt="" class="image" />
        <div class="info">
            <p class="description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
        </div><!-- .info -->
    </div><!-- .column -->

    <div class="column">
        <img src="http://placehold.it/800x650" alt="" class="image" />
        <div class="info">
            <p class="description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
        </div><!-- .info -->
    </div><!-- .column -->

    <div class="column">
        <img src="http://placehold.it/800x650" alt="" class="image" />
        <div class="info">
            <p class="description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
        </div><!-- .info -->
    </div><!-- .column -->
</div><!-- .row -->

CSS

body {
    font: normal 0.7em sans-serif; }
.row {
    width: 100%; }
.image {
    max-width: 100%; }
.info {
    background: rgba(0, 0, 0, .5);
    color: #FFF;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: all .3s linaer;
    width: 100%;

    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -ms-transition: all .3s linear;
    -o-transition: all .3s linear; }
.column:hover .info {
    opacity: 1; }
}
.column {
    position: relative; }
.row-3 .column {
    float: left;
    width: 33.333333%; }

我做了一个 fiddle 来展示这个问题:http://jsfiddle.net/q5z4B/1/

最佳答案

问题是您将 33.333333% 用作宽度。浏览器需要一些时间来计算图像需要填充容器的“33.33333%”的“100%”。

如果您将图像宽度更改为 100.1% 而不是 100%,可能会起作用

关于html - 具有绝对定位元素的列之间出现意外间隙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22862200/

相关文章:

javascript - 基于refs的动画在componentDidUpdate中调用setState

r - 通过将值与列名匹配来填充 data.frame

python - 如何在 pyspark 中对具有动态列的表进行透视

css - 使用 CSS column-count 并不能仅平衡 Chrome 中的内容

html - z-index 不在父项后面显示子项

html - 使用动画变换旋转地球 svg

javascript - 如何将隐藏的 ID 列表添加到 Javascript 中的表单?

css - 在 div 中定位 div

css - 如何在每行和每列的表格单元格背景颜色中交替

css - 为屏幕和打印媒体设计页面 - 字体大小