javascript - Jquery元素居中放大效果,求指教思路谢谢?
巴扎黑
巴扎黑 2017-04-11 10:24:19
[JavaScript讨论组]

页面中已经有一个p了,并且始终保持居中状态的,我想让它从0开始慢慢放大,这个过程要始终居中显示,请教下各位大侠重点在哪儿?若能有实例代码就更好了O(∩_∩)O~先谢啦!

巴扎黑
巴扎黑

全部回复(3)
巴扎黑

jQuery实现很简单啊,写了个demo给你

<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="//localhost/jquery-3.1.0.min.js"></script>
    <style>
        .wrap { position: relative; width: 500px; height: 500px; background-color: #eee; }
        .wrap p{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); -ms-transform: translate(-50%,-50%); width: 0px; height: 0px; background-color: red; }
    </style>
</head>
<body>
    <p class="wrap">
        <p></p>
    </p>
</body>
<script>
$(function(){
    $('.wrap p').animate({height:'500px', width:'500px'},2000);
})
</script>
</html>
怪我咯

可以用css3的动画啊,我之前用keyframe写了一个渐变效果
稍作修改即可
当动画为 25% 及 50% 时改变宽度高度,然后当动画 100% 完成时再次改变:

@keyframes myfirst
{
    0%   {width:xxx;height:xxx;}
    25%  {width:xxx;height:xxx;}
    50%  {width:xxx;height:xxx;}
    100% {width:xxx;height:xxx;}
}
xxx的数字不断增大即可

这个方法是用css实现,性能上面优于js实现方式,但是要看你的使用场景,如果是表现类的话推荐用css实现,如果需要控制的话加入js部分只需要操作css改变即可。

这里你将里面的css属性改变为你需要的width和height,我想可以实现你要的效果。我刚才已经测试了,是可行的,供你参考哈:)

PHPz

不考虑兼容用 scale,不要用宽高放大

<!doctype html>
<html>
<head>

<meta charset="UTF-8">
<title></title>
<style>
    @keyframes full {
        0%{
            transform:scale(0);
        }
        100%{
            transform:scale(1);
        }
    }
    .z {
        width: 200px;
        height: 200px;
        border:1px solid #ccc;
        position: absolute;
        top:50%;
        left:50%;
        margin:-100px 0 0 -100px;
        transform-origin: center center;
        animation: full .3s linear forwards;
    }
</style>

</head>
<body>
<p class="z"></p>
</body>
</html>

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号