htmlcss实现鼠标悬停时图片拉近效果

jlfw      2022-02-13     485

关键词:

前言

为了让网页的使用体验更好,我们会让网页的某些元素对鼠标的动作做出响应。例如鼠标滑过、单击按钮的时候按钮变色、变形。之前在很多网页上看到了鼠标滑过一个图片链接时图片放大、拉近的效果,今天尝试实现一下。

1. 使用background实现

思路:设置以图片作为div元素的背景,鼠标滑过div的时候通过background属性放大图片。

<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <title>background实现图片拉近效果</title>
  <style>
    #box {
      background: url(../images/img022.png);
      width: 720px;
      height: 720px;
      margin: 0 auto;
      border: 1px solid #aaa;
      background-color: #444;
    }

    #box:hover {
      background-size: 100.5% 100.5%;
    }
  </style>
</head>

<body>
  <div id=‘box‘>

  </div>
</body>

</html>

2. 使用img元素的width height属性实现

思路:当鼠标滑过图片时,修改img元素的widthheight属性放大图片

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>img图片拉近效果</title>
  <style>
    #box{
      width:60%;
      min-width:1000px;
      min-height:800px;
      margin:0 auto;
      border:1px solid #aaa;
      background-color:#444;
      text-align:center;
      
    }

    img:hover{
      width:723px;
      height:723px;
    }
  </style>
</head>
<body>
  <div id=‘box‘>
    <img src="../images/img022.png" width=‘720px‘ height=‘720px‘ />
  </div>
</body>
</html>

3. 使用transform放大图片

<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <title>transform实现图片拉近效果</title>
  <style>
    a:hover img {
      transform: scale(1.005, 1.005);
    }
  </style>
</head>

<body>
    <a href="#">
        <img src="../images/img022.png" />
    </a>
</body>

</html>

4. 使用transformtransition来放大图片

以上的3种实现方式中,图片放大过程几乎都是瞬间完成的,感觉不流畅,视觉体验也不好。同transition可以设置放大过程经历的时间,从而有流畅的感觉。

<!DOCTYPE html>  
<html>  
  
    <head>  
        <meta charset="UTF-8">  
        <title>transform、transform实现图片拉近</title>  
        <style>  
           
            .test_a {  
                display: block;
                margin: 0 auto;
                width:400px;
                overflow: hidden;
            }  
              
            .test_a img {  
                width: 100%;
            }  
              
            .test_a:hover img {  
                transform: scale(1.2);  
                transition: all 1s ease 0s;
            } 
            
             
        </style>  
    </head>  
  
    <body>  
        <a href="" class="test_a">
          <img src="../images/img022.png" />
        </a>  
    </body>  
  
</html>  

上面这种方式,图片放大过程是流畅的,但是缩小过程很生硬,可以改进一下。

<!DOCTYPE html>  
<html>  
  
    <head>  
        <meta charset="UTF-8">  
        <title>transform、transform 图片拉近 优化</title>  
        <style>  
           
            .test_a {  
                display: block;
                margin: 0 auto;
                width:400px;
                overflow: hidden;
            }
              
            .test_a img {  
                width: 100%;  
                transform: scale(1);  
                transition: all 1s ease 0s;
            }  
            
            .test_a:hover img {  
                transform: scale(1.2);
                transition: all 1s ease 0s;
            }  
        </style>  
    </head>  
  
    <body>  
        <a href="" class="test_a">
          <img src="../images/img022.png" />
        </a>  
    </body>  
  
</html> 

后语

实验的时候发现很多知识有点模糊了,该补习了。

在线DEMO https://hgy9473.github.io/myl...

css实现鼠标悬停在图片上图片缓慢缩放效果

 方法一:.container{  background-size:100%100%;  transition:all2s;}.container:hover{  background-size:120%120%;} 方法二:img{  transition:all2s;}img:hover{  transform:scale(1.2);  //图片放大的倍 查看详情

css鼠标悬停图片加边框效果,不位移的方法

<!DOCTYPEHTML><htmllang="en-US"><head><title>css实现鼠标悬停时图片加边框效果</title><styletype="text/css">body{background:#222;color:#06c;}em{font-style:inherit;}img{background:w 查看详情

wordpress里用啥插件或代码能实现鼠标悬停图片上出现文字说明的效果?

wordpress里用什么插件或代码能实现鼠标悬停图片上出现文字说明的效果?这不需要任何插件,只需要修改页面代码,在img标签或a标签中加入title=“你要显示的文字”;即可。例如在a标签中,当鼠标移动到“相关介绍”上,弹出... 查看详情

在网页制作中,怎么把图片应用为动态html效果?当鼠标悬停时图片1换成图片2,要怎么设置?

...中“插入”-“图片对象”-“鼠标经过图片”如果是用CSS实现的话,可以在需要设置动态效果的标签中使用伪类:hover具体怎么用,就看你对CSS的掌握程度了。PS:该方法不适用于IE6,其他的可以。再有就是用JavaScript来实现了。对... 查看详情

如何使用css在鼠标悬停时缩放图像?

...使用JavaScript使用CSS在本文中,我们将看到如何使用CSS来实现这种效果。本文包含两部分代码。第一部分包含HTML代码,第二部分包含CSS代码。HTML代码:在本文中,我们将使用HTML创建悬停效果时图像缩放的基 查看详情

两种方式实现鼠标悬停图片逐渐变大

...这里推荐两种方式,各有优缺点:1.利用js,通过定时器实现宽高的加减。//鼠标移动图片变大functionchange_large(obj,speed,target_width,target_height){vartimer=null;varbengin_width=140;//初始宽度varbengin_height=180;//初始高度clearInt 查看详情

使用html和css实现鼠标悬停时文本的旋转

鼠标悬停在文字上时,文字会出现旋转效果。这种效果实现的原理是,将每个文字或者单词的每个字母在任一轴(最好是Y轴)一起旋转。每个文字或者单词都包裹在<li>标记中,然后使用CSS:hoverSelector选择器,我们将在Y轴... 查看详情

翻转效果:用鼠标悬停改变图片

】翻转效果:用鼠标悬停改变图片【英文标题】:RolloverEffect:ChangePicturewithMousehover【发布时间】:2018-02-1811:17:48【问题描述】:我正在尝试创建一个可以改变图片的悬停。很多教程告诉我尝试onmouseover和onmouseout。但是Brackets(我... 查看详情

纯css实现鼠标悬停图片上升显示描述(代码片段)

...可以看到对图片的文字描述呢?下面一起来看看吧。实现效果实现思路我们需要将外层的盒子设置相对定位,将其子盒子设置绝对定位,形成子绝父相,当我们触摸图片时,通过bottom属性搭配transition属性让其... 查看详情

鼠标悬停时仅显示当前卡片悬停效果

】鼠标悬停时仅显示当前卡片悬停效果【英文标题】:onmouseovershowonlycurrentcardhovereffect【发布时间】:2021-07-0300:07:39【问题描述】:。目前,如果我的鼠标移到卡片上,那么它会显示每张卡片的效果。这在VueNuxtjs中怎么可能?我... 查看详情

在鼠标悬停时创建圆形火焰效果

】在鼠标悬停时创建圆形火焰效果【英文标题】:Createroundedfireeffectonmouseover【发布时间】:2019-01-0616:15:24【问题描述】:在Hobbit\'s网站偶然发现了一个漂亮的火焰效果。这个效果我实际上只在游戏中看到过。有两个带有left和righ... 查看详情

chrometransition闪烁bug

...移动的问题,其他浏览器表现正常。原因尚不知,可能是实现方式不对吧(PS:使用top实现),虽然不知道原因,但是问题还是要解决的,分享一个能绕开的实现方式。    说到鼠标悬停元素上移,首先想到的是鼠... 查看详情

css鼠标悬停图片加边框效果,页面布局发生错位的解决办法

CSS鼠标悬停图片加边框效果,页面布局发生错位的解决办法.recomend-list{width:1200px;a{@extend%fl;margin-right:30px;width:260px;height:440px;border:2pxsolidtransparent;@extend%borderbox;&:hover{border-color:#109ef3;}}img{widt 查看详情

删除 WPF 中 ListView 上的鼠标悬停效果

】删除WPF中ListView上的鼠标悬停效果【英文标题】:RemovethemouseovereffectonaListViewinWPF【发布时间】:2013-06-1520:06:13【问题描述】:如何让我的ListView上的淡蓝色鼠标悬停效果?当我触摸屏幕时,会出现一个淡蓝色选择器,并在我上... 查看详情

鼠标悬停tip效果如何用css实现?

...又能很好的传达信息。  应用divcss布局,我们用CSS可以实现这样的效果吗?其实这很简单,我们可以新建一个span或div,将之初始设置成:display:none,隐藏这一标签的内容。(关于display可以参考这里)当鼠标移上去的时候,我... 查看详情

jquery鼠标悬停效果bug,mouseover事件总是在mouseout时触发几次

】jquery鼠标悬停效果bug,mouseover事件总是在mouseout时触发几次【英文标题】:jquerymousehovereffectbug,mouseovereventalwaystriggersafewtimesonmouseout【发布时间】:2011-11-0212:32:41【问题描述】:我有一个简单的画廊网格,其中包含一个显示标题... 查看详情

html鼠标悬停左侧缩小图片放大到右边

...首先这是一张图片在悬停时放大也就是改变大小(宽,高)实现的。2,一张图片在放大的时候会根据其定位(如在div里面的图片会以div的左上角为基准扩大宽和高)来放大的,因此如果我们不去为图片添加相对定位并且不去调节扩大... 查看详情

如何在wordpress中悬停时翻转产品图像?

...更改或翻转产品图片。所以请建议任何WordPress插件或任何实现该效果的代码(也建议进行更改的文件路径)。【问题讨论】:【参考方案1】:只需添加自定义图像字段,将2个图像(例如精选和来自自定义字段)放入包装 查看详情