CSS实现鼠标悬浮动画特效


Posted in HTML / CSS onMay 07, 2023

最近发现css动画真是只有你想不到,没有她做不到,有些效果调好了做出来是真的好看。

1.第一个动画:

CSS实现鼠标悬浮动画特效

这个动画看起来还是很舒适的。 下面是这个的dom结构以及样式

<template>
    <div class="middle">
        <div class="box">
            <img src="../../assets/img/img-2.jpg">
            <div class="box-content">
                <h3 class="title">Williamson</h3>
                <span class="post">Web designer</span>
                <div class="icon">
                    <i class="iconfont iconfangdajing"></i>
                </div>
            </div>
        </div>
    </div>
</template>
<style scoped lang='scss' src="./index.scss"></style>
.box{
    height: 320px;
    width: 440px;
    overflow: hidden;
    position: relative;
    z-index:1;
    transition: all .5s;
    img{
        transition: all .5s ease;
    }
    .title{
        color: #1e272e;
        font-size: 23px;
        font-weight: 700;
        text-transform: uppercase;
        margin: 0 0 3px 0;
    }
    .post{
        font-size: 16px;
        text-transform: capitalize;
        display: block;
        float: right;
        margin-top: 8px;
        margin-right: 2px;
    }
    .box-content{
        height: 100px;
        width: auto;
        position: absolute;
        z-index: 999;
        top: 30%;
        right: -150%;
        transition: all 0.5s;
        .icon{
            display: inline-block;
            width: 28px;
            height: 28px;
            border-radius: 50%;
            background-color: #1e272e;
            position:absolute;
            top:-3px;
            right: -40px;
            transition: all .3s;
            i{
                position: absolute;
                top: 7px;
                left: 7px;
                clear: both;
                font-size: 15px;
                color: #fff;
            }
            &:hover{
                background-color: #fff;
                border-radius: 10%;
                box-shadow: 0 0 5px #1e272e inset;
                i{
                    color: #1e272e;
                }
            }
        }
    }
    &:hover{
        box-shadow: 1px 2px 10px #999;
        img{
            transform: scale(1.2)
        }
        .box-content{ right:18% }
    }
}
.box:before,.box:after{
    content:"";
    background:radial-gradient(circle at 23% 70%,rgba(255,255,255,0.8),#fff 30%);
    width: 150%;
    height: 150%;
    opacity: 0;
    transform: rotate(45deg);
    position: absolute;
    top: -10.5%;
    right: -168%;
    z-index: 1;
    transition: all 0.35s;
}
.box:before{
    top: -188%;
    left: -100%;
}
.box:hover:before{
    background-color: rgba(255,255,255,0.5);
    width: 65%;
    height: 65%;
    right: auto;
    left: -15%;
    top: -43%;
    opacity: 0.5;
}
.box:hover:after{
    top: -11.2%;
    right: -90.3%;
    opacity: 0.9;
}

这个就是类似于两个长方形在外面等着,等鼠标hover到图片上以后再进来。就像:

CSS实现鼠标悬浮动画特效

两个长方形合并起来,配合overflow:hidden就可以实现啦,是不是很简单

2. 第二个动画:

CSS实现鼠标悬浮动画特效

是不是感觉很高大上! 其实就是rotate外面边框而已啦! 当边框设置了border-radius: 50%;以后,没有边框的一边就会变成虚线哦~不要以为是canvas啦,这样也可以简单实现! 下面是代码部分~

<div class="items animated  fadeInUpBig">
	<div class="item"  @mouseenter="hoverWord(1)" @mouseleave="hoverWordLeave(1)">
		<div class="item-content">
			<img src="../../assets/img/img-2.jpg" alt="" >
			<div class="word">{{word.word1}}</div>
		</div>
	 </div>
</div>
.items {
            display: flex;
            width: 80vw;
            margin-left: 10vw;
            .item{
                width: 210px;
                height: 210px;
                border-radius: 50%;
                margin-top: 20vh;
                margin: 0 auto;
                .out-circle{
                    width: 210px;
                    height: 210px;
                    border: 1px solid #fff;
                    border-left: 0; 
                    border-radius: 50%;
                    position: relative;
                    transition: all .45s linear;
                    &:hover{
                        transform: rotate(180deg);
                    }
                }
                .out-circle:before{
                    content: "";
                    width: 6.5px;
                    height: 6.5px;
                    border-radius: 50%;
                    position: absolute;
                    top: 27px;
                    left: 27px;
                    background-color: #fff;
                }
                &:hover{
                    .out-circle{
                        transform: rotate(180deg);
                    }
                    .item-content {
                        img{
                            transform: scale(1.2);
                        }
                        .word{
                            font-size: 14px;
                        }
                    }
                }
                .item-content{
                    width: 162px;
                    height: 162px;
                    border-radius: 50%;
                    overflow: hidden;
                    position: relative;
                    top: -186px;
                    left: 24px;
                    img{
                        width: 100%;
                        height: 100%;
                        border-radius: 50%;
                        position: relative;
                        //filter:blur(1px);
                        filter: brightness(50%);
                        transition: all .35s ease-in-out;
                    }
                    .word{
                        height: 40px;
                        width: 145px;
                        font-size: 22px;
                        line-height: 38px;
                        font-weight: 700;
                        color: #fff;
                        text-align: center;
                        position: relative;
                        top: -100px;
                        left: 8px;
                        border-top: 1px solid #fff;;
                        border-bottom: 1px solid #fff;
                        cursor: pointer;
                    }
                    
                }
                
            }

改字的地方用到了js,可以自己添加。

到此这篇关于CSS实现鼠标悬浮动画特效的文章就介绍到这了,更多相关CSS鼠标悬浮动画内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
css3一款3D字体带阴影效果的实现步骤
Mar 20 HTML / CSS
使用css3制作动感导航条示例
Jan 26 HTML / CSS
css3使网页、图片变成灰色兼容大多数浏览器
Jul 02 HTML / CSS
一篇文章带你学习CSS3图片边框
Nov 04 HTML / CSS
纯CSS3实现运行时钟的示例代码
Jan 25 HTML / CSS
canvas实现有递增动画的环形进度条的实现方法
Jul 10 HTML / CSS
html5指南-1.html5全局属性(html5 global attributes)深入理解
Jan 07 HTML / CSS
html5 利用重力感应实现摇一摇换颜色可用来做抽奖等等
May 07 HTML / CSS
用HTML5制作数字时钟的教程
May 11 HTML / CSS
html5实现图片转圈的动画效果——让页面动起来
Oct 16 HTML / CSS
boostrap modal 闪现问题的解决方法
Sep 01 HTML / CSS
css如何把元素固定在容器底部的四种方式
Jun 16 HTML / CSS
CSS link与@import的区别和用法解析
May 07 #HTML / CSS
html,css,javascript是怎样变成页面的
May 07 #HTML / CSS
html原生table实现合并单元格以及合并表头的示例代码
May 07 #HTML / CSS
html解决浏览器记住密码输入框的问题
May 07 #HTML / CSS
使用CSS实现百叶窗效果示例代码
使用CSS实现按钮边缘跑马灯动画
使用CSS实现音波加载效果
You might like
php结合js实现点击超链接执行删除确认操作
2014/10/31 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
php实现图片上传并进行替换操作
2016/03/15 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
javascript与webservice的通信实现代码
2010/12/25 Javascript
不同编码的页面表单数据乱码问题解决方法
2015/02/15 Javascript
javascript实现倒计时并弹窗提示特效
2015/06/05 Javascript
jQuery+HTML5实现图片上传前预览效果
2015/08/20 Javascript
javascript中Date对象应用之简易日历实现
2016/07/12 Javascript
AngularJS 中文API参考手册
2016/07/28 Javascript
Java  Spring 事务回滚详解
2016/10/17 Javascript
详解js中call与apply关键字的作用
2016/11/21 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
$.browser.msie 为空或不是对象问题的多种解决方法
2017/03/19 Javascript
vue 虚拟dom的patch源码分析
2018/03/01 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
2019/04/02 Javascript
JS实现的排列组合算法示例
2019/07/16 Javascript
JavaScript 截取字符串代码实例
2019/09/05 Javascript
Vue中axios拦截器如何单独配置token
2019/12/27 Javascript
通过实例了解Javascript柯里化流程
2020/03/03 Javascript
[02:12]探秘2016国际邀请赛中国区预选赛选手房间
2016/06/25 DOTA
Python实现嵌套列表去重方法示例
2017/12/28 Python
Python数据结构之栈、队列及二叉树定义与用法浅析
2018/12/27 Python
centos7之Python3.74安装教程
2019/08/15 Python
python类中super() 的使用解析
2019/12/19 Python
python实现计算器简易版
2020/12/17 Python
Python实现钉钉/企业微信自动打卡的示例代码
2021/02/02 Python
详解利用css3的var()实现运行时改变scss的变量值
2021/03/02 HTML / CSS
塑料制成的可水洗的编织平底鞋和鞋子:Rothy’s
2018/09/16 全球购物
什么是设计模式
2012/06/17 面试题
初中生操行评语大全
2014/04/24 职场文书
优质服务口号
2014/06/11 职场文书
奥林匹克运动会口号
2014/06/19 职场文书
2014迎接教师节演讲稿
2014/09/10 职场文书
2014国庆节餐厅促销活动策划方案
2014/09/16 职场文书