Foundation 网格 - 大型设备学习笔记

Foundation 是一个响应式的前端 CSS 框架,它包含了多种网格系统,其中最常用的是基于 Flexbox 的基础网格系统。但是,对于大型设备(如台式机、笔记本电脑等),我们需要使用另外一种网格系统来充分利用屏幕空间,这就是 Foundation 的大型设备网格系统。

大型设备网格系统

大型设备网格系统使用了类似传统栅格系统的方式来布局页面,它将屏幕宽度分成 12 份,并且为每个单元格添加了上下边距和左右间距。它还提供了一些特殊的类来实现各种常见布局需求。

HTML 结构

大型设备网格系统的 HTML 结构与基础网格系统类似,都是由一个 .row 容器和若干个 .column 元素组成。但是,在大型设备网格系统中,.column 元素可以再次嵌套 .row 容器和 .column 元素。

htmlCopy Code
<div class="row"> <div class="column"> <!-- 单个列 --> </div> <div class="column"> <!-- 单个列 --> </div> </div> <div class="row"> <div class="column"> <!-- 嵌套的列 --> <div class="row"> <div class="column"></div> <div class="column"></div> </div> </div> <div class="column"> <!-- 嵌套的列 --> <div class="row"> <div class="column"></div> <div class="column"></div> </div> </div> </div>

列宽度类

大型设备网格系统提供了一组特殊的列宽度类,用来实现各种布局需求。这些类的命名方式是 .large-$num,其中 $num 等于 1 到 12 中的一个数字,代表该列在大型设备上占据的宽度比例。

htmlCopy Code
<div class="row"> <div class="column large-6"> 50% 的宽度 </div> <div class="column large-6"> 50% 的宽度 </div> </div> <div class="row"> <div class="column large-3"> 25% 的宽度 </div> <div class="column large-6"> 50% 的宽度 </div> <div class="column large-3"> 25% 的宽度 </div> </div>

偏移类

大型设备网格系统还提供了一组偏移类,用来实现列的偏移显示。这些类的命名方式是 .large-offset-$num,其中 $num 等于 1 到 11 中的一个数字,代表该列向右偏移的宽度比例。

htmlCopy Code
<div class="row"> <div class="column large-4"> 33% 的宽度 </div> <div class="column large-4 large-offset-4"> 33% 的宽度,向右偏移了 33% </div> </div> <div class="row"> <div class="column large-3"> 25% 的宽度 </div> <div class="column large-6 large-offset-3"> 50% 的宽度,向右偏移了 25% </div> </div>

实例

下面是一个使用大型设备网格系统布局的实例代码,它包含了一个头部、一个内容区和一个侧边栏,其中头部和内容区占据 8 列,侧边栏占据 4 列,并且头部和侧边栏向上下分别留出了 1 单位的边距。

htmlCopy Code
<div class="row"> <div class="column large-8 large-offset-2"> <header class="header"> <!-- 头部内容 --> </header> <div class="content"> <!-- 内容区 --> </div> </div> <div class="column large-4 large-offset-2 large-uncentered"> <aside class="sidebar"> <!-- 侧边栏 --> </aside> </div> </div>

在 CSS 中,我们可以定义 .header.content.sidebar 的具体样式,以达到自己想要的显示效果。