CSS 实现 图片鼠标悬停折叠效果

要实现图片鼠标悬停折叠效果,可以通过CSS的transform属性来实现。具体步骤如下:

  1. HTML结构:首先需要在HTML中添加一张图片,然后用一个div将图片包裹起来,并添加一个文字描述:
<div class="image-box">
  <img src="image.jpg" alt="图片描述">
  <div class="description">图片描述</div>
</div>
  1. CSS样式:接下来需要对这个div设置一些基本样式,如宽度、高度、边框等,并将图片设为相对定位,用于后续进行绝对定位:
.image-box {
  width: 300px;
  height: 200px;
  border: 1px solid #ccc;
  position: relative;
}

.image-box img {
  position: absolute;
  top: 0;
  left: 0;
}
  1. 鼠标悬停效果:要实现鼠标悬停折叠效果,需要在鼠标悬停时对图片进行变换,这里使用CSS的transform属性,并在悬停状态下增加一个背景遮罩:
.image-box:hover img {
  transform: scale(0.8);
}

.image-box:hover::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .5);
  position: absolute;
  top: 0;
  left: 0;
}

其中,transform: scale(0.8); 表示将图片缩小为原来的80%。而:hover伪类则表示鼠标悬停状态下生效。另外,添加了一个:before伪元素来实现背景遮罩效果。

示例1:

<div class="image-box">
  <img src="image1.jpg" alt="图片描述">
  <div class="description">图片描述</div>
</div>
.image-box {
  width: 300px;
  height: 200px;
  border: 1px solid #ccc;
  position: relative;
}

.image-box img {
  position: absolute;
  top: 0;
  left: 0;
}

.image-box:hover img {
  transform: scale(0.8);
}

.image-box:hover::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .5);
  position: absolute;
  top: 0;
  left: 0;
}

示例2:

<div class="image-box">
  <img src="image2.jpg" alt="图片描述">
  <div class="description">图片描述</div>
</div>
.image-box {
  width: 300px;
  height: 200px;
  border: 1px solid #ccc;
  position: relative;
}

.image-box img {
  position: absolute;
  top: 0;
  left: 0;
}

.image-box:hover img {
  transform: scale(0.8);
}

.image-box:hover::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .5);
  position: absolute;
  top: 0;
  left: 0;
}

通过以上步骤可以在网页中实现图片鼠标悬停折叠效果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CSS 实现 图片鼠标悬停折叠效果 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 网页缓冲效果特效代码

    下面是关于网页缓冲效果特效代码的完整攻略: 标题一:什么是网页缓冲效果特效代码? 网页缓冲效果特效代码是指通过一些前端技术,让网页在加载过程中具有较好的用户体验,而不是显示空白或者没有任何反应。这类特效效果一般包括一些动画、进度条、过渡效果等。常见的缓冲效果有:loading动画,进度条,骨架屏等等。 标题二:如何实现网页缓冲效果特效? 实现网页缓冲效果特效…

    css 2023年6月9日
    00
  • JavaScript仿微信打飞机游戏

    JavaScript仿微信打飞机游戏是一款常见的前端小游戏,以下是实现步骤及示例说明: 1. 准备工作 1.1 引入游戏所需的资源 游戏需要的资源包括背景图片、飞机图片、子弹图片、敌机图片等。可以在游戏开始前通过HTML对资源进行预加载。 <body onload="gameStart()"> <div id=&quot…

    css 2023年6月10日
    00
  • 用纯CSS3打造立体提示模块的效果实现(图) 附源码

    我来详细讲解一下“用纯CSS3打造立体提示模块的效果实现(图) 附源码”的完整攻略。 1. 网页布局 首先,我们需要创建网页的基本布局。在这个例子中,我们需要用到一个按钮和一个含有提示信息的盒子。 <div class="container"> <button class="btn">触发提示&…

    css 2023年6月9日
    00
  • Web页面中八种创建多列等高(等高列布局)的实现技术

    下面就来详细讲解一下“Web页面中八种创建多列等高(等高列布局)的实现技术”的攻略。 一、使用Flexbox布局 使用Flexbox布局是一种常用的创建多列等高布局的方式,需要设置父容器的display属性为flex,并且给子元素设置flex-grow:1,如下所示: .container { display: flex; } .item { flex-gr…

    css 2023年6月9日
    00
  • CSS关于相对定位和绝对定位的说明实例

    下面是关于CSS相对定位和绝对定位的详细攻略。 相对定位 相对定位是指元素的定位相对于其原本的位置,通过指定元素的相对定位属性,可以把元素在其原本位置上移动一定的距离。 相关CSS属性 相对定位需要使用以下CSS属性: position:相对定位需要设置为relative; top:定义从元素的顶端开始向下偏移的距离; bottom:定义从元素的底部开始向上…

    css 2023年6月9日
    00
  • 基于vue的换肤功能的示例代码

    下面是“基于Vue的换肤功能的示例代码”的完整攻略: 一、示例代码说明 1.1 效果预览 用户可以通过点击不同的按钮,切换应用的主题风格。 1.2 代码实现 html代码部分: <template> <div :class="theme"> <p>当前主题:{{theme}}</p> &lt…

    css 2023年6月10日
    00
  • 使用vue的transition完成滑动过渡的示例代码

    使用vue的transition可以实现页面元素的过渡动画,如做一个图片的滑动过渡效果,下面就详细说明下使用vue的transition完成滑动过渡的示例代码。 我们假设现在有一个页面中需要实现一个图片的滑动过渡效果,这个滑动过渡效果需要实现图片从左往右滑动,同时有淡入淡出的效果。 首先需要在template模板中编写transition标签,如下所示: &…

    css 2023年6月10日
    00
  • CSS: hover选择器的使用详解

    以下是“CSS: hover选择器的使用详解”的完整攻略: CSS: hover选择器的使用详解 CSS 中的 :hover 选择器用于在鼠标悬停在元素上时应用样式。以下是一些常用的 :hover 选择器的用法。 基本用法 以下是一个基本的 :hover 选择器的示例: a:hover { color: red; } 这个示例会在鼠标悬停在链接上时将链接的颜…

    css 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部