动画div并从中心扩展

时间:2011-07-13 07:28:11

标签: css animation center expand

我有一个简单的代码,可以从中心水平和垂直扩展div, 但它只扩展到左侧或底部,我希望它从中心扩展到两侧(左侧= 50px,右侧= 50px)或(顶部= 50px,底部= 50px),总计等于100px。 这里是代码:

<!DOCTYPE html>
<html>
<head>
  <style>
    div {
    background-color:#bca;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    background-repeat: no-repeat;
    background-position: center center;
    border:1px solid green;
    padding:10px;
}
  </style>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
  <button id="go">&raquo; Run</button>

<div id="block">Hello!</div>
<script>


$("#go").click(function(){
  $("#block").animate({
    width: "100px",
    height: "100px",
    opacity: 0.6,
  }, 1500 );
});
</script>

</body>

谢谢。

1 个答案:

答案 0 :(得分:15)

怎么样?

<强> HTML

<!DOCTYPE html>
<html>
<head>
</head>
<body>
    <button id="go">&raquo; Run</button>
    <div id="block">Hello!</div>
</body>

<强> CSS

div {
    background-color:#bca;
    background: #fff;
    position: absolute;
    top: 0px;
    left: 0px;
    margin-left: 50%;
    margin-top: 50%;
    background-repeat: no-repeat;
    background-position: center center;
    border:1px solid green;
    padding:10px;
}

<强>的jQuery

$("#go").click(function(){
    $("#block").animate({
        width: "100px",
        height: "100px",
        top: "-50px",
        left: "-50px",
        opacity: 0.6,
    }, 1500 );
});

http://jsfiddle.net/theguywholikeslinux/87f4Y/

我使用margin-left和margin-top进行居中,然后使用top:left:值来使盒子长大,左右以及向下和向右。

如果你想要&#34; Hello&#34;你可能需要添加一些额外的CSS。留在盒子的中心。