圣杯布局和双飞翼布局

圣杯布局(Holy Grail Layout)和双飞翼布局(Double Wings Layout)是两种常见的多列布局技术,用于实现一个固定宽度的主内容区域,以及左右两侧可变宽度的侧边栏。这两种布局都希望能够实现以下效果:

  • 主内容区域垂直排在页面最前面,占据剩余的宽度。
  • 左右两侧的侧边栏分别位于主内容区域的左右两侧,宽度可以自适应或指定。

下面是对两种布局的简要介绍:

1. 圣杯布局:

圣杯布局使用相对定位和负边距来实现侧边栏的定位。HTML结构如下:

html 复制代码
<div class="container">
  <div class="sidebar sidebar-left"></div>
  <div class="content"></div>
  <div class="sidebar sidebar-right"></div>
</div>

CSS样式如下:

css 复制代码
.container {
  padding: 0 200px; /* 左右侧边栏的宽度 */
}

.sidebar {
  float: left;
  width: 200px; /* 侧边栏的宽度 */
}

.sidebar-left {
  margin-left: -100%;
  position: relative;
  right: 200px; /* 右侧边栏的宽度 */
}

.content {
  float: left;
  width: 100%;
}

.sidebar-right {
  margin-left: -200px;
  position: relative;
  left: -200px;
}

2. 双飞翼布局:

双飞翼布局通过使用嵌套的<div>来实现侧边栏的定位,以及使用负外边距将主内容区域撑开。HTML结构如下:

html 复制代码
<div class="container">
  <div class="content">
    <!-- 主内容 -->
  </div>
</div>
<div class="sidebar sidebar-left"></div>
<div class="sidebar sidebar-right"></div>

CSS样式如下:

css 复制代码
.container {
  padding: 0 200px; /* 左右侧边栏的宽度 */
}

.content {
  margin: 0 200px; /* 左右侧边栏的宽度 */
}

.sidebar {
  float: left;
  width: 200px; /* 侧边栏的宽度 */
}
相关推荐
※DX3906※20 小时前
Java排序算法--全面详解面试中涉及的排序
java·开发语言·数据结构·面试·排序算法
笨笨马甲21 小时前
Qt QSS使用指南
开发语言·qt
We་ct1 天前
LeetCode 77. 组合:DFS回溯+剪枝,高效求解组合问题
开发语言·前端·算法·leetcode·typescript·深度优先·剪枝
格林威1 天前
工业相机图像高速存储(C#版):内存映射文件方法,附Basler相机C#实战代码!
开发语言·人工智能·数码相机·c#·机器视觉·工业相机·堡盟相机
Nuopiane1 天前
MyPal3(3)
java·开发语言
KerwinChou_CN1 天前
什么是流式输出,后端怎么生成,前端怎么渲染
前端
lihihi1 天前
P1650 [ICPC 2004 Shanghai R] 田忌赛马(同洛谷2587)
开发语言·算法·r语言
阿蒙Amon1 天前
C#常用类库-详解Autofac
开发语言·c#
爱上妖精的尾巴1 天前
8-18 WPS JS宏 正则表达式-边界匹配
开发语言·javascript·正则表达式·wps·jsa
格林威1 天前
工业相机图像高速存储(C#版):内存映射文件方法,附堡盟相机C#实战代码!
开发语言·人工智能·数码相机·计算机视觉·c#·工业相机·堡盟相机