我已将自己编入角落,或者我正在监督这里显而易见的事情。我有一个半流体的CSS布局,设计如下:
标题 - 始终为100%宽度,包含x重复的背景图像
容器 - 流体(960px至1200px,居中,包含两列)
页脚 - 始终为100%宽度,包含x重复的背景图像
几乎在所有情况下,这都可以。
总之,整个设计可以扩展到任何宽度,但内容部分最多只能达到1200px。然而,由于这涉及照片网站,有时图像比容器宽度1200px宽,并且图像突然出现。这非常好,我想要显示完整的图像。但是,我希望页眉和页脚缩放到最宽的元素,在这种情况下是图像。当我将窗口调整到小于图像的宽度然后使用水平滚动条向右滚动时,这种情况不会发生并且特别麻烦:它在页眉和页脚上留下了明显的间隙,而我希望它们延伸到至少图像/内容宽度。
仅将宽度设置为100%是不够的,因为它涉及视口,而不是内容宽度。我可以强制使用具有较大值的min-width作为页眉和页脚,但是在正常分辨率下会留下水平滚动条。我可以使用overflow:hidden来隐藏滚动条,但是当窗口很小时,它会切断内容而不显示滚动条。
总而言之,我想我想要的是这个布局会起作用,因为一个表可以工作:如果一个列的内容比它的大小宽,它会将所有其他行推到相同的宽度。最大宽度决定了总宽度。我更喜欢没有javascript的解决方案,但我认为这不是可能的,或者我正在监督一些非常明显的事情?
答案 0 :(得分:1)
100%宽度将元素的宽度设置为其所包含元素宽度的100%。在您的情况下,它似乎是窗口本身(或主体元素)。为了使页眉和页脚div(我假设你在这里使用div)与图像缩放,它们可能需要包含在图像所在的div中,或者在图像div中的div内也是,假设div正在缩放到正确的宽度(不要假设它是缩放以适合图像)。
但是,在许多情况下,使用表格进行布局可以更加清晰,并且可以处理您正在寻找的水平缩放类型,而无需使用css hacks。
答案 1 :(得分:0)
长话短说,我想 我想要的是这种布局会 作为一个表工作
display:table在这些元素的公共容器上,并在其子元素上显示:table-row或table-cell。这在IE6中不起作用,但聪明的事情可以用它的CSS表达式()黑客来模拟这个。
但是,我建议你不要设置最大宽度,并根据用户所需的窗口大小让设计更好地流动。