agencyAccountDropDownDiv

agencyAccountDropDownDiv

我有两个输入字段(一个文本框和一个select),我想相互叠加。在我的js中,我将检查某物的值并将元素样式的设置为隐藏。当我使用以下代码时,select和textbox都完全可见(这是在我将其标记为隐藏之前)。是否可以设置CSS属性,使它们直接位于彼此的顶部,以便在隐藏一个属性时,似乎只有一个。谢谢您的帮助。

<div>
   <div id="agencyAccountDropDownDiv">
     <select id="AgencyAccountSelect">
     </select>
    </div>
    <div id="agencyAccountInputDiv">
     <input id="Text1" type="text" />
    </div>
</div>

最佳答案

您正在寻找的是一种堆叠技术。

1)使您的容器div相对定位:
#agencyAccountDropDownDiv{position:relative;}

因此,包含div的停留位置绝对根据其容器定位。

2)接下来,将包含div的输入都设置为绝对位置:

#agencyAccountDropDownDiv, #agencyAccountInputDiv{position:absolute;}

上面的意思是浏览器将把div像一堆纸牌一样堆叠起来。

3)使用JavaScript隐藏并显示您想要的div。

var div1 = document.getElementById('agencyAccountDropDownDiv');

var div2 = document.getElementById('agencyAccountInputDiv');

div1.style.display = 'block';

div2.style.display = 'none';

或g.d.d.c提到的jquery:

$("#agencyAccountDropDownDiv").show();

$("#agencyAccountInputDiv").hide();

08-07 15:09