是否可以仅从指定的高度设置和更改div的宽度,并将其余部分保留原样?

时间:2013-07-25 09:46:09

标签: jquery html css

我想为div设置动画,使上半部分(高度:50px)的宽度为100px,下半部分(高度:200px)的宽度为200px。这可能吗?

请参阅jsfiddle,了解我希望在一个div中设置动画的最终结果。

http://jsfiddle.net/vr9eX/1/

来自JsFiddle的一些CSS用于我的示例pic,因为StackOverflow只给了我一个jsFiddle链接的麻烦:

#a{
    background-color:blue;
    height:50px;
    width:100px;
}
#b{
   background-color:blue;
   height:200px;
   width:200px;  
}

这可能吗? 如果是的话,我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

我不确定希望此链接可以帮助您。 http://css-tricks.com/snippets/jquery/animate-heightwidth-to-auto/

还有这个:

<!DOCTYPE html>
<html>
<head>
  <style>
div {
  background-color:#bca;
  width:200px;
  height:1.1em;
  text-align:center;
  border:2px solid green;
  margin:3px;
  font-size:14px;
}
button {
  font-size:14px;
}
</style>
  <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
  <button id="go1">&raquo; Animate Block1</button>
<button id="go2">&raquo; Animate Block2</button>
<button id="go3">&raquo; Animate Both</button>

<button id="go4">&raquo; Reset</button>
<div id="block1">Block1</div>
<div id="block2">Block2</div>
<script>

$( "#go1" ).click(function(){
  $( "#block1" ).animate( { width: "90%" }, { queue: false, duration: 3000 })
     .animate({ fontSize: "24px" }, 1500 )
     .animate({ borderRightWidth: "15px" }, 1500 );
});

$( "#go2" ).click(function(){
  $( "#block2" ).animate({ width: "90%" }, 1000 )
     .animate({ fontSize: "24px" }, 1000 )
     .animate({ borderLeftWidth: "15px" }, 1000 );
});

$( "#go3" ).click(function(){
  $( "#go1" ).add( "#go2" ).click();
});

$( "#go4" ).click(function(){
  $( "div" ).css({ width: "", fontSize: "", borderWidth: "" });
});

</script>

</body>
</html>