删除兄弟姐妹DIV时自动扩展内部div



我对CSS有问题,我现在不知道该如何解决几天。到处搜索答案...

这是我为此目的创建的小提琴:
https://jsfiddle.net/tdckcxhh/8/

<body style="margin:0; background: lightgray;">
<div style="width: 400px; height: 400px; position:absolute; top: 30px; left: 30px;">
    <div style="height:100%; border: 1px solid red;">
        <div style="background:#d0d0ff" class="disclaimer">
            This is a removable message which is always different (up to 100 words)
        </div>
        <div style="background:#d0d00f; height: 25px" class="desc">
            This is content description
        </div>
        <div style="background:#d0ffd0; height: 100%">
            <div id='newdiv'>
                <div class="overflow: auto;">
                    <table class="table2">
                            <tr>
                                <td width="40%">Name</td>
                                <td width="20%">zip</td>
                                <td>Address</td>
                            </tr>
                            <tr>
                                <td>A very long name</td>
                                <td>12345</td>
                                <td>followed by an even longer name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name</td>
                                <td>12345</td>
                                <td>followed by an even longer name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name</td>
                                <td>12345</td>
                                <td>followed by an even longer name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name</td>
                                <td>12345</td>
                                <td>followed by an even longer name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name</td>
                                <td>12345</td>
                                <td>followed by an even longer name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                            <tr>
                                <td>A very long name 2</td>
                                <td>23456</td>
                                <td>followed by another name</td>
                            </tr>
                    </table>
                </div>
            </div>
        </div>
    </div>
</div>
</body>
<script>
$(document).ready(function(){
$(".disclaimer").click(function(){
    $(this).remove();
});

});
</script>

代码描述:

表长度总是不同的。有时,它只是一行,但可以达到500行。台式标头总是相同的。
根据桌子的大小,有适当的免责声明 - 可移动的消息也总是不同的。用户通过单击它

将其删除

问题:

我需要一个表格在DIV内部,该表的自动高度等于放置后剩下的,并放置了描述。如果桌子大于Div,则该Div将具有滚动条。删除免责声明后,表Div将自动扩展并在需要时保持滚动条

这必须是纯CSS解决方案,它可能具有尽可能多的包装HTML元素 - 只要它看起来像原始,并且具有所需的功能,而无需使用jQuery(或类似库)

带有引导程序的P.S解决方案将是完美的

编辑:我在这里找到了一个解决方案:
使用显示器使用CSS填充剩余的垂直空间:Flex
http://jsfiddle.net/7ylfl/5/

答案在这里

使用显示器使用CSS填充剩余的垂直空间:flex
http://jsfiddle.net/7ylfl/5/

CSS:

section {
  display: flex;
  flex-flow: column;
  height: 300px;
}
header {
  background: tomato;
}
div {
  flex: 2 ;
  background: gold;
  overflow: auto;
}
footer {
  background: lightgreen;
  min-height: 60px; 
}

最新更新