HTML5 - 图片悬停放大-程序员宅基地

图片悬停放大效果:

HTML5 代码如下:

<!DOCTYPE html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>CSS3图片悬停放大动画</title>
    <link rel="stylesheet" href="css/image-hover.css" type="text/css">
    <link rel="stylesheet" href="css/image-hover-main.css" type="text/css">
</head>
<body>
    <div id="image-container">
            <div class="img" id="img-1">
                <div class="mask"></div>
                <img src="img/01.jpg">
            </div>
            <div class="img" id="img-2">
                <div class="mask"></div>
                <img src="img/07.jpg">
            </div>
            <div class="img" id="img-3">
                <div class="mask" id="mask-1"></div>
                <div class="mask" id="mask-2"></div>
                <img src="img/05.jpg">
            </div>
            <div class="img" id="img-4">
                <div class="mask"></div>
                <img src="img/04.jpg">
            </div>
            <div class="img" id="img-5">
                <div class="mask"></div>
                <img src="img/06.jpg">
            </div>
            <div class="img" id="img-6">
                <div class="mask"></div>
                <img src="img/08.jpg">
            </div>
            <div class="clearfix"></div>
        </div>
    
</body>

</html>

另外附上两个css 样式(image-hover.css 和 image-hover-main.css):

image-hover.css

.img{
    
    -webkit-transform:scale(0.6);
    -moz-transform:scale(0.6);
    -o-transform:scale(0.6);
    float:left;
    margin-left:-50px;
    margin-right:-50px;
    margin-top:-10px;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    }
.img img{
    
        padding:10px;
        border:1px solid #fff;
}
.img:hover{
    
    -webkit-transform:scale(0.8);
    -webkit-box-shadow:0px 0px 30px #ccc;
    -moz-transform:scale(0.8);
    -moz-box-shadow:0px 0px 30px #ccc;    
    -o-transform:scale(0.8);
    -o-box-shadow:0px 0px 30px #ccc;    
}     
.img .mask{
    
    width: 100%;
    background-color: rgb(0, 0, 0);
    position: absolute;
    height: 100%; 
    opacity:0.6;
    cursor:pointer;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -o-transition-duration:0.5s;
}
#img-1:hover .mask{
    
    height:0%;    
}
#img-2:hover .mask{
    
    height:0%;    
    margin-top:130px;
}
#img-4:hover .mask{
    
    margin-left:219px;
    margin-top:135px;
    height:0%;
    width:0%;
}
#img-3 #mask-1 {
    
    width:50%;
}
#img-3 #mask-2{
    
    width:50%;
    margin-left:211px;
}
#img-3:hover #mask-1{
    
    width:0%;
}
#img-3:hover #mask-2{
    
    margin-left:430px;
    width:0%;
}
#img-5:hover .mask{
    
    margin-left:219px;
    margin-top:135px;
    height:0%;
    width:0%;
    -webkit-transform: rotateX(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(-360deg);
}
#img-6:hover .mask{
    
    margin-left:219px;
    margin-top:135px;
    height:0%;
    width:0%;
    -webkit-transform: rotateZ(750deg);
    -moz-transform: rotateZ(750deg);
    -o-transform: rotat(750deg);
}

 

image-hover-main.css

 

html{
    
    height:100%;
    margin:0;
    padding:0;
    width:100%;
    background-color:#242424;
    font-family:arial;
}
body{
    
    height:100%;
    margin:0 auto;
    padding:0;
    width:980px;
}
#logo  {
    
    background-color:#242424;
    color:#F1F1F1;
    font-size:43px;
    padding:15px 0 6px;
    text-shadow:0 0 2px #FFFFFF;
}
#logo a {
    
    color:#F1F1F1;
}
#container{
    
    width:100%;
    min-height:800px;
    background-color:#000;
}
a{
    
color: rgb(0, 114, 191); text-decoration: none;    
}
.heading{
    
    font-size:24px;
    color:#dfdfdf;
    text-align:center;
    padding-top:20px;
}
.legal{
    
    text-align:center;
    color:5f5f5f;
    font-size:16px;
    margin-top:100px;
    background:-moz-linear-gradient(center top , #000, #242424) repeat scroll 0 0 transparent;
    background:-webkit-gradient(linear,left top,left bottom,color-stop(0, #000),color-stop(1, #242424));
    background:-o-gradient(linear,left top,left bottom,color-stop(0, #000),color-stop(1, #242424));

}
a{
    
color: rgb(0, 114, 191); text-decoration: none;    
}
.warning{
    
    color:#555;
    text-align:center;
    font-size:12px;
}
.msg{
    
    color:#dfdfdf;
    text-align:center;
    font-size:14px;
    line-height:1.5em;
}
.clearfix{
    
    clear:both;
    float:none;
}

 

转载于:https://www.cnblogs.com/zhoux955792/p/11518774.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/diaoliao1853/article/details/102123928

智能推荐

分布式任务调度平台XXL-JOB安装部署_xxl-job部署_菜鸟老胡~的博客-程序员宅基地

啥是XXL_JOB?XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司(目前官网主动上报的446家)线上产品线,开箱即用。不多介绍了,直接上部署教程:一.下载文档地址中文文档 English Documentation源码仓库地址源码仓库地址 Release Download GitHub - xuxueli/xxl-job: A distributed task scheduling framewo_xxl-job部署

android Instrumentation剖析-程序员宅基地

Android提供了一系列强大的测试工具,它针对Android的环境,扩展了业内标准的JUnit测试框架。尽管你可以使用JUnit测试Android工程,但Android工具允许你为应用程序的各个方面进行更为复杂的测试,包括单元层面及框架层面。Android测试环境的主要特征有:l 可以访问Android系统对象。l Instrumentation框架可以控制和测试

Python 2.7: no documentation found when typing help('print')_python中print()报提示no documentation found.-程序员宅基地

原文转自http://askubuntu.com/questions/230994/python-2-7-no-documentation-found-when-typing-helpprintI have just installed Python 2.7 and Python 3.2 on my Ubuntu 12.04 (32 bit).sudo apt-get install_python中print()报提示no documentation found.

Mybatis中update使用动态SQL语句_mybatis动态update语句-程序员宅基地

Mybatis 进行Update 操作时;有的数据不一定要进行修改,因此从前台传过来的数据,某些项可能为null;在进行sql 语句时 就会进行异常;导致操作失败;所以进行动态SQL语句拼接:在UserMapper.xml中 更改: <update id="updateUser" parameterType="map" > update sa..._mybatis动态update语句

2021-07-04 .NET高级班 87- ASP.NET MVC Log4日志的用法_asp.net mvc 使用 log_微软MVP Eleven的博客-程序员宅基地

nuget安装log4net包配置文件代码如下<?xml version="1.0" encoding="utf-8"?><log4net> <!-- Define some output appenders --> <appender name="rollingAppender" type="log4net.Appender.RollingFileAppender"> <file value="log\log.txt" /> ._asp.net mvc 使用 log

随便推点

dwg图纸与dxf图纸的区别?_dxf和dwg的区别-程序员宅基地

dwg文件就不在过多介绍了,*.dwg是AutoCAD的图形文件,是二维或三维图形档案。其与dxf文件是可以互相转化的。dxf是Autodesk公司开发的用于AutoCAD与其它软件之间进行CAD数据交换的CAD数据文件格式。DXF是一种开放的矢量数据格式,可以分为两类:ASCII格式和二进制格式;ASCII具有可读性好,但占有空间较大;二进制格式占有空间小、读取速度快。由于Autocad现在是最流行的cad系统,DXF也被广泛使用,成为事实上的标准。绝大多数CAD系统都能读入或输出DXF文件。 DXF_dxf和dwg的区别

java web实战_java web开发实战经典基础篇答案_叶涛网站推广优化的博客-程序员宅基地

题主是在测试javaservlet吗?工程怎么配置的?请给出实现servlet的那个java类以及web.xml.。extrainfo。开源中国.有很多的开源项目,可以去看看.视频教程的话,怎么发你.邮箱??qq??publicstaticvoidmain(String[]args){Stringurl="bbs...._javaweb开发实战经典

Kimera实时重建的语义SLAM系统_kimeraslam实战-程序员宅基地

Kimera实时重建的语义SLAM系统Kimera是C++实现的一个具有实时度量的语义SLAM系统,使用的传感器有相机与IMU惯导数据来构建环境语义标注的3D网格,Kinera支持ROS运行在CPU上的高效模块化的开源方案。包含了四个模块:快速准确的视觉-惯导里程计VIO流水线(Kimera-VIO)基于鲁棒位姿的图优化完整SLAM实现(Kimera-RPGO)单帧和多帧3D网格生成器(Kimera-Mesher)语义标签的3D网格生成器(Kimera-Semantics)github:http_kimeraslam实战

浅谈vue,angular,react数据双向绑定原理分析-程序员宅基地

传统做法前端维护状态,手动操作DOM更新视图。前端框架对服务器数据通过模版进行渲染。当用户产生了一个动作之后,我们通过document.getElementBy... 手动进行DOM更新。 框架帮忙分离数据和视图,后续状态更新需要手动操作DOM,因为框架只管首次渲染,不追踪状态监听变化。双向数据绑定当我们在前端开发中采用MV*的模式时,M - model,指的是模型,也就是数据,V ...

第四届CECC中国计算机教育大会召开,飞桨持续加码产教融合教育新生态-程序员宅基地

‍‍大模型作为人工智能发展的新方向,对人才的需求和培养带来了新挑战。4月21日至22日,以“新时代 新挑战 新任务”为主题的第四届中国计算机教育大会(CECC)在厦门召开,飞桨承办“人工智能与大模型”论坛同期举办。

分治法-求解众数问题Java-程序员宅基地

1.众数问题:给定含有N个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数,多重集合S中重数最大的元素称为多重集合S的众数,众数的重数称为多重集合S的重数,试求一个给定多重结合的重数和众数。例如:S={a,b,b,b,f,f,4,5}的重数是3,众数是b2.算法思路:首先为集合S排序,使之成为有序的数组(使用Arrays类的sort方法) 取中位数为众数,中位数的个数为重数,确定左右界 向左界递归,取中位数为众数,取中位数个数为重数,比较 向右界递归,取中位数为众数,取中位数

推荐文章

热门文章

相关标签