我有两个div,一个在另一个里面。一个叫做#wrapper,另一个称为#pad。
现在#pad允许用户输入,我有一个javascript(jQuery)函数,它根据用户输入改变#pad的内容。有时,由于这个功能,#pad的内容会使div变得比以前更加拉长。现在显然我希望#wrapper能够长得更长,以适应#pad长度的变化。但是,这不会发生。
#wrapper
{
clear:both;
padding-top:0.5em;
/*padding-left:50px;*/
height: 100%;
background-color: rgba(255,255,255,0.4);
-moz-border-radius: 20px 20px 0px 0px;
-webkit-border-radius: 20px 20px 0px 0px;
border-radius: 20px 20px 0px 0px;
}
#pad
{
margin-top: 25px;
-moz-border-radius: 5px;
border: solid 1px #DDD;
margin-left:25px;
padding-left:25px;
margin-right:25px;
padding-right:25px;
margin-bottom:2em;
}
这是javascript函数:
function preview()
{
var id1=$("#input1").val();
var id2=$("#input2").val();
var id3=$("#input3").val();
var id4=$("#input4").val();
var id5=$("#input5").val();
if(id1!= null && id1!="")
{
if( $("#preview1").attr("src")!=id1)
{
$("#preview1").attr("src",id1);
$("#preview1").fadeIn("slow");
}
}
else
{
$("#preview1").attr("src","");
$("#preview1").fadeOut("slow");
}
if(id2!= null && id2!="")
{
if( $("#preview2").attr("src")!=id2)
{
$("#preview2").attr("src",id2);
$("#preview2").fadeIn("slow");
}
}
else
{
$("#preview2").attr("src","");
$("#preview2").fadeOut("slow");
}
if(id3!= null && id3!="")
{
if( $("#preview3").attr("src")!=id3)
{
$("#preview3").attr("src",id3);
$("#preview3").fadeIn("slow");
}
}
else
{
$("#preview3").attr("src","");
$("#preview3").fadeOut("slow");
}
if(id4!= null && id4!="")
{
if( $("#preview4").attr("src")!=id4)
{
$("#preview4").attr("src",id4);
$("#preview4").fadeIn("slow");
}
}
else
{
$("#preview4").attr("src","");
$("#preview4").fadeOut("slow");
}
if(id5!= null && id5!="")
{
if( $("#preview5").attr("src")!=id5)
{
$("#preview5").attr("src",id5);
$("#preview5").fadeIn("slow");
}
}
else
{
$("#preview5").attr("src","");
$("#preview5").fadeOut("slow");
}
setTimeout("preview()",1000);
$("#wrapper").attr("height",$(document).attr("height"));
}
答案 0 :(得分:1)
据我所知,摆脱#wrapper高度:100%,调整边距和填充以使事情合适,它应该有效。我想问题主要是你混淆了元素属性高度和CSS属性高度。在任何情况下,所有这些都应该可以简单地使用普通的HTML流程而不是手动改变高度。
顺便说一句,“更长时间”是一个非常奇怪的措辞,我认为你的意思是说“更高”。