有一些浮动div在彼此顶部。当用户在它们上面盘旋时,高度随着jQuery命令而增加:
$(".concert").hover(function () {
$(this).parent().find(".concert[opened='opened'] .concertbody").animate({ height: "0px" }, { duration: 400, queue: false });
$(this).parent().find(".concert[opened='opened'] .concertHeader .middle").css("background-image", "url(Images/concert-header-back.png)");
$(this).parent().find(".concert[opened='opened'] .concertbody").css("border", "none");
$(this).parent().find(".concert[opened='opened'] .concertbody .concertDetails").css("visibility", "hidden");
$(this).find(".concertbody").animate({ height: "276px" }, { duration: 400, queue: false });
$(this).find(".concertHeader .middle").css("background-image", "url(Images/concert-header-back-hover.png)");
$(this).find(".concertbody").css("border", "1px solid whitesmoke");
$(this).find(".concertbody .concertDetails").css("visibility", "visible");
$(this).parent().find(".concert[opened='opened']").removeAttr("opened");
$(this).attr("opened", "opened");
});
布局正常,其他div下降,但是当我使用firebug并检查其他div标签时,位置不会改变。
页面的Html:
<div class="parent">
<div class="concert" id="ct1">
<div class="concertHeader">
<div class="middle">
<span class="concertName">کنسرت همایون شجریان</span>
<span class="concertCity">تهران</span>
</div>
</div>
<div class="concertbody">
<div class="concertDetails">
<span>محل دیدار : سالن همایش های بین المللی میلاد تهران</span>
<select class="test2">
<option value="1">16:30</option>
<option value="2">18:50</option>
</select>
<select class="test">
<option value="1">بیست و هشتم اردیبهت ماه نود و دو</option>
<option value="2">بیست و هشتم اردیبهت ماه نود و دو</option>
<option value="3">بیست و هشتم اردیبهت ماه نودو دو</option>
</select>
</div>
</div>
</div>
<div class="concert" id="ct2">
<div class="concertHeader">
<div class="middle">
<span class="concertName">کنسرت همایون شجریان</span>
<span class="concertCity">تهران</span>
</div>
</div>
<div class="concertbody">
<div class="concertDetails"></div>
</div>
</div>
<div class="concert" id="ct3">
<div class="concertHeader">
<div class="middle">
<span class="concertName">کنسرت همایون شجریان</span>
<span class="concertCity">تهران</span>
</div>
</div>
<div class="concertbody">
<div class="concertDetails"></div>
</div>
</div>
<div class="concert" id="ct4">
<div class="concertHeader">
<div class="middle">
<span class="concertName">کنسرت همایون شجریان</span>
<span class="concertCity">تهران</span>
</div>
</div>
<div class="concertbody">
<div class="concertDetails"></div>
</div>
</div>
<div class="concert" id="ct5">
<div class="concertHeader">
<div class="middle">
<span class="concertName">کنسرت همایون شجریان</span>
<span class="concertCity">تهران</span>
</div>
</div>
和CSS:
.container {
width: 972px;
height: 532px;
margin-right: auto;
margin-left: auto;
border: 1px solid white;
border-radius: 5px;
}
.parent {
width: 324px;
height: 490px;
float: right;
}
.parent .concert {
width: 324px;
height: 40px;
margin: 2px;
}
.middle {
--background-image:url("../Images/concert-header-back.png");
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JmYmZiZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlNWU1ZTUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, rgba(191,191,191,1) 0%, rgba(229,229,229,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(191,191,191,1)), color-stop(100%,rgba(229,229,229,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(191,191,191,1) 0%,rgba(229,229,229,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(191,191,191,1) 0%,rgba(229,229,229,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(191,191,191,1) 0%,rgba(229,229,229,1) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(191,191,191,1) 0%,rgba(229,229,229,1) 100%); /* W3C */
width: 320px;
height: 40px;
float: right;
border-radius: 5px;
}
.concertHeader:hover .middle {
width: 320px;
height: 40px;
float: right;
}
.rightSide {
background-image: url("../Images/concert-header-right-side.png");
width: 5px;
height: 40px;
float: right;
}
.leftSide {
background-image: url("../Images/concert-header-left-side.png");
width: 5px;
float: right;
height: 40px;
}
.concertName, .concertCity {
font-size: 8pt;
color: Black;
margin-top: 16px;
}
.concertName {
width: 250px;
display: inline-block;
margin-right: 10px;
}
.concertCity {
margin-right: 5px;
}
.concertbody {
height: 0px;
width: 318px;
margin-right: 0px;
margin-top: 1px;
margin-bottom: 1px;
border-radius: 5px;
}
我该怎么做才能解决这个问题?
此致
答案 0 :(得分:0)
.parent .concert {
width: 324px;
margin: 2px;
}
.parent .concert
上有一个固定的高度如果需要,您可以添加最小高度。