javascript - CSS-HTML:使用 html 和 css 将图像放在另一个图像之上
问题描述
我是 webdev 的新手,但我需要起草一个带有一些技巧效果的登录页面。我需要在移动(鼠标悬停)背景上放置一个“模板图像”(带有 transp 的 png)。基本上,我设法做到了,但我遇到了一个大问题:如果我调整浏览器的大小,背景会显示在第一个平面图像的后面,(因为我无法将背景调整为浏览器大小)。所以,主要代码是:
html代码:
<div id="bkg-image" class="blur"></div>
<div>
<img src="./imgs/stencil.png" class="firstPlane" />
</div>
CSS 代码:
#bkg-image {
background: url('./imgs/background.jpg') no-repeat center center fixed;
position: absolute;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
width: 75%;
height: 75%;
z-index: 0;
-webkit-filter: brightness(1.7);
}
.firstPlane {
display: block;
position: absolute;
top: 0px;
left: 0px;
max-width: 100%;
height: auto;
width: auto;
z-index: 2;
}
JS代码:
$(document).ready(function() {
var movementStrength = 75;
var height = movementStrength / $(window).height();
var width = movementStrength / $(window).width();
$(".firstPlane").mousemove(function(e) {
var pageX = e.pageX - ($(window).width() / 2);
var pageY = e.pageY - ($(window).height() / 2);
var newvalueX = width * pageX * -1;
var newvalueY = height * pageY * -1;
$('#bkg-image').css("background-position", newvalueX + "px " + newvalueY + "px");
});
});
知道如何裁剪多余的背景或如何重新缩放以适合第一平面图像吗?
注意: blur 类仅用于动画模糊效果,与此无关。我从网络教程中获取了java脚本。
我的第一个方法是使用 webkit mask-image,但发现它不起作用,现在我正在尝试这种方法。
非常感谢您的帮助
解决方案
我需要反转选择:我需要读取第一个平面上的鼠标位置并将移动应用于 bkg 图像。(您的脚本仅在我切换 #bkg-image 和 .firstPlane 时才有效)。我的问题不是读取运动,而是当我有一个又小又高的浏览器窗口时,裁剪 bkg-image 以使其不显示在第一个平面下方。
解决方案是蒙版/剪辑图像,但它不适用于 svg 图形或 PNG 对我来说,所以我放弃并尝试使用带有 transp 的黑色大 PNG 来显示背景。像这样的东西:(https://codepen.io/caraujo/pen/rVOZKJ)
但带有徽标(矢量或 png),但蒙版/图像剪辑不适用于我:/
推荐阅读
- powershell - 当所有正在运行的进程“console exe”完成后继续执行
- php - 如何在 Laravel 查询中使用 LIKE 运算符和 AND 运算符
- vscode-remote - vscode-remote 中的多个开发容器
- google-cloud-platform - GCP 中的流水线
- c - 我的代码在第一次输入 scanf 后停止运行
- c++ - 为什么 make_shared 在不同的调用中分配相同的地址?
- c# - netDxf 包 - System.IO.FileNotFoundException:'无法加载文件或程序集'System.Drawing.Common
- macos - 使用 SwiftUI 在 MacOS 中的多列 TableViews
- android - RecyclerView如何支持全屏导航UI?
- python - elif 语句名称检查器