HTML5通过CSS定位(position: absolute)和透明度(opacity/rgba)实现图片叠加,核心是相对定位容器内绝对定位多图并控制层级与透明度。
HTML5 本身不直接提供“图片叠加”功能,真正实现多图叠加靠的是 HTML 结构 + CSS 定位(如 position: absolute)和透明度控制(opacity 或 rgba())。核心思路是:把多张图片放在同一个容器内,用 CSS 让它们层叠显示。
这是最常用、最可控的方式。父容器设为 position: relative,子图片设为 position: absolute,它们就会脱离文档流、共享同一坐标系,自然堆叠。
z-index 精确控制层级top/left 值通常设为 0,让它们完全重合叠加后若全遮挡就失去意义,需让上层图片“变透明”。推荐优先使用 rgba() 设置背景色或边框透明,而用 opacity 调整整张图片(含内容)的不透明度。
opacity: 0.7 表示整体 70% 不透明(即 30% 透明),值越小越透明,取值范围 0–1opacity 会影响元素内所有
内容(比如文字、子元素),若只需调图片本身,可考虑用 background-image 配合 rgba() 背景色模拟background: url(x.jpg) no-repeat; background-color: rgba(255,255,255,0.2);
复制以下代码到 HTML 文件中即可看到两张图叠加效果(第二张半透明覆盖在第一张上):
src 路径正确,建议用开发者工具检查网络请求absolute 图片可能缩成一团或消失——务必给尺寸(百分比或像素)viewport 设置和图片响应式,叠加区域可能错位——可加 max-width: 100%; height: auto; 防拉伸mix-blend-mode,但兼容性略低,需按需测试