在显示父项时显示div无

时间:2014-09-26 19:51:04

标签: javascript jquery html css

我有这样的div

<div style: "display:none;">
   <div class="displayMe">
   </div>
</div>

我需要如何在保持父Div隐藏

的同时制作div displayMe节目

5 个答案:

答案 0 :(得分:4)

你可以用这个:

//this class for parent div
.hide {visibility: hidden;}
//this class to the child div
.reshow {visibility: visible;}

答案 1 :(得分:2)

不,这是不可能的。您可以改为移动/克隆子元素并将其插入标记中的其他位置(例如,通过JavaScript)。

var element = jQuery('.Inner-Div').clone();

然后附加到任何适当的可见元素。

element.appendTo('some element');

示例http://jsfiddle.net/xmo9bpot/

修改

另一个聪明的方法是hide所选子元素的所有兄弟姐妹,实际上让父母可见

DEMO http://jsfiddle.net/xmo9bpot/1/

$(".child").siblings().hide();

答案 2 :(得分:1)

它并不完全清楚,你想要显示隐藏父母的可见部分。这是一个纯粹的CSS解决方案,它或多或少地取代了屏幕上有孩子的父母。

正如您所看到的,此解决方案在页面上的其他内容方面存在缺陷。但是,设置display:none会从文本流中删除隐藏元素占用空间,因此如果可以在非显示元素中显示元素,则可能会发生这种情况。

&#13;
&#13;
#wrapper {
    position: relative;
    height: 0px;
    visibility: hidden;
}
#content {
    position: absolute;
    top: 0px;
    visibility: visible;
}
&#13;
<div id="wrapper">
    Text in the wrapper<br/>
    more text ...<br/>
    ... and one more line.
    <div id="content">Some visible content</div>
    This text is below the visible
</div>
<div>This is outside of invisible</div>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

这不可能,因为当您想要显示其子项

时,容器应该是可见的

解释您的方案可以提供相关的解决方案,或者您可以尝试以下方法 如果你在父div中有多个div,并且你想使用jquery / javscript一次显示任何一个子div,那么你可以将你的div安排为

<div>
   <div id="div1" style="display:none;">
   </div>

  <div id="divq" style="display:none;>
   </div>

  <div id="div3" style="display:none;>
   </div>

</div>

然后将您的javascript / jquery代码编写为

if (YourCondition == 1)
{
  $('#div1').show();
}

else if (YourCondition == 2)
{
  $('#div2').show();
}


if (YourCondition == 3)
{
  $('#div3').show();
}

干杯!

答案 4 :(得分:-2)

.displayMe{display:block !important}