jquery - 图像叠加层 "margin-top"无法正确显示不同的图像高度

标签 jquery html css height margin

问题在 fiddle 中最明显 JsFiddle

图片叠加设置为margin-top:-100%;但它不适用于长度超过 300x300 的元素。

我试过如下使用 jquery:

$(window).load(function () {
        $(".overlay").each(function () {
            var $parentHeight = $(".overlay").parent().height();

            $(".overlay").css("margin-top", -$parentHeight);
        });
    });

结果相同。

最佳答案

你应该使用 top:0 而不是 margin-top:-100%;

.overlay {
  width: 100%;
  height: 100%;
  background-color: red;
  opacity: 0;
  z-index: 1;
  -webkit-transition: .2s all;
  position: absolute;
  top:0;
}

我对您的样式进行了此编辑,请在此处查看:https://jsfiddle.net/IA7medd/ngmpm5x0/

关于jquery - 图像叠加层 "margin-top"无法正确显示不同的图像高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37238061/

相关文章:

javascript - 如何按顺序执行 jQuery AJAX 调用?

html - 容器没有边框时的 CSS 边距问题

javascript - 我将如何定位网页中的所有内容,以便即使浏览器大小或屏幕分辨率发生变化,所有内容仍然存在?

javascript - 如何使用查询更改 tinymce 背景 onchange 的颜色

javascript - 在没有 for 循环的情况下调整大小时(使用 jquery)在单个元素中 Bootstrap 轮播多个图像

html - 在 jquery onclick 按钮中使用条件

javascript - Onclick 更改按钮的名称和功能

javascript - 将选定的菜单选项移动到第一个位置

html - 悬停图像不显示

javascript - 检查其他复选框后,复选框未禁用