CSS 中图像比较的简单技巧
让我们创建输入范围滑块及其下面的两个 div,其类名为 .front、.back 在父 div 内,类名为“.img-before-after” '。将内联样式 width:50% 分配给 .front div
为img-before-after、input-range、input-slider-thumb、front、后退
body { background: #d6d6d6; } .img-before-after { position: relative; width: 900px; height: 600px; } input[type="range"] { background: transparent; width: 100%; height: 100%; margin: 0; outline: none; position: absolute; z-index: 2; -webkit-appearance: none; } input[type="range"]::-webkit-slider-thumb { width: 10px; height: 600px; cursor: pointer; -webkit-appearance: none; background: black; }
为.front和.back div添加背景图片。
.front, .back { position: absolute; width: 100%; height: 600px; background: url("https://shorturl.at/kbKhz") no-repeat; background-size: cover; z-index: 1; }
让我们将 .back div 发送到 .front div 后面,并使用 z-index 并将其设为灰度。
.back { filter: grayscale(1); z-index: 0; }
我们需要在拖动输入滑块时动态增加/减少'.front' div 的宽度。我们必须将输入范围值附加到 '.front' div.
的宽度
oninput="this.nextElementSibling.style.width = `${this.value}%`"
输出:
下面您可以在开发工具中观察当我们拖动滑块范围时宽度如何增加和减少。
您可以尝试使用 CSS 的不同变体,例如 blur、invert 等,如下所示。
模糊
.back { filter: blur(5px); z-index: 0; }
倒置
.back { filter: invert(1); z-index: 0; }
最终输出: 灰度
感谢您的观看...
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3