【问题标题】:use css for alignment and filling使用 css 进行对齐和填充
【发布时间】:2012-04-12 20:13:25
【问题描述】:

我想要一个包含另外两个 div 的 div,一个顶部 div 和一个底部 div。顶部 div 应与顶部对齐并具有自动高度,这取决于顶部 div 的内容。底部 div 应该填充父 div 的空白区域。

我只想使用 CSS 进行对齐。我不想自己计算任何位置或大小。

我尝试了以下方法:

1) http://jsfiddle.net/2dUxa/

问题:如果调整父级的大小,底部 div 应该向下移动一些像素。

2) http://jsfiddle.net/Th4Mn/

问题:如果调整父级的大小,底部 div 应该变小。

使用 javascript 的解决方案可能如下所示:http://jsfiddle.net/2dUxa/7/ 他们是不使用 javascript 的解决方案吗?

【问题讨论】:

  • 您需要网站底部的 div 吗?没有它,它可以工作。
  • 是的,我需要它,因为底部 div 是可滚动区域。
  • opacy: 1.0 确实适用于底部 div(第二个示例)
  • 我添加了0.5的不透明度只是为了显示它不起作用,底部div太大了。

标签: javascript css positioning alignment


【解决方案1】:

好吧,这个怎么样:http://jsfiddle.net/2dUxa/3/

我将两个 div 都更改为 position: relative,并在底部设置一个 height: 100%

然后,设置#main overflow: hidden;

【讨论】:

  • 那我遇到了无法使用底部div的滚动条的问题
【解决方案2】:

在标记和 css 下面使用这个..

这是你的代码check this,下面是我的代码

​<div id="main">

    <header>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed mattis congue auctor. Proin iaculis blandit erat, nec vestibulum orci ultricies eget. Suspendisse viverra posuere urna, eu eleifend leo imperdiet at. Nulla lobortis, erat elementum placerat sagittis, est tellus hendrerit quam, quis iaculis leo est et mi.</p>
    </header>

    <footer>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed mattis congue auctor. Proin iaculis blandit erat, nec vestibulum orci ultricies eget. Suspendisse viverra posuere urna, eu eleifend leo imperdiet at. Nulla lobortis, erat elementum placerat sagittis, est tellus hendrerit quam, quis iaculis leo est et mi.</p>
    </footer>

</div>

​#main{
width:80%;
height:300px;
position:relative;
background:#ddd;    
}
header{
width:100%;
height:auto;
position:absolute;
top:0;
left:0;
background:#aaa;    
}   
​footer{
width:100%;
height:auto;
position:absolute;    
bottom:0;
left:0;
background:#777;    
}   

查看here运行代码...​

【讨论】:

  • 它不工作。底部 div 的“顶部”位置与顶部 div 的底线的距离必须始终相同。
  • 相同距离是什么意思???要将页脚移动为顶部浮动,您必须通过 jquery 计算或需要一个中间的 div,这将自动移动页脚,因为页眉将浮动或更改高度。 check this 如果它适合你
  • 我使用javascript构建了一个解决方案:jsfiddle.net/2dUxa/7底部的div不是页脚,但顶部就像一个页眉。底部 div 必须填充父 div 的空白区域。我不想为此使用 javascript。
  • 好的,所以我知道你总共有 3 个 div,其中一个是父 div,两个子 div 将是标题,或者现在可以在顶部(红色)说,其他将低于红色div 底部(绿色)。您希望顶部 div 的高度根据内容和宽度灵活,而底部 div(绿色)将在红色 div 完成后立即开始,这将填满父 div 的所有区域。如果是这种情况,请check thisThis Too两者相同,但内容不同,如果不是还需要了解更多。
  • 父 div 的大小应该保持不变,我想在底部 div 中使用滚动条
猜你喜欢
  • 2010-12-13
  • 2018-07-27
  • 1970-01-01
  • 2011-07-25
  • 1970-01-01
  • 2019-02-19
  • 2018-01-23
  • 1970-01-01
相关资源
最近更新 更多