你好。我需要一个 3 列的流体布局:固定宽度的左侧和右侧边栏,内容是流体的。底部页脚。
必须首先加载内容,然后是侧边栏,即 如果我们采用编号左侧边栏 - 1,内容 - 2,右侧边栏 - 3,则所需的块顺序为 2-1-3(下面给出 HTML)或 2-3-1,在极端情况下为 1-2 -3(通常使用 1 -3-2,这个选项不适合我,因为我需要移动版的右侧边栏出现在内容之后)。
<main>
<header>Header</header>
<section class="middle clr">
<section id="block-2" class="content">Content</section>
<aside id="block-1" class="left">Left sidebar</aside>
<aside id="block-3" class="right">Right sidebar</aside>
</section>
<footer>Footer</footer>
</main>
对旧浏览器的支持是可取的。
我考虑过绝对定位的选项,但是页脚有问题——你需要不断地找到最大块的高度并设置容器的高度……但是如果js被禁用(很明显这些是非常罕见),那么一切都在堆上....,有时计算块高度会出现问题,特别是如果js页面上有动画/可加载元素......
所以?
数字不是很清楚,但似乎是正确的。通过浮动布局将适用于所有浏览器。你也可以使用 flexbox,但这并不适合所有人。