CSS Grid 中 [line-name] 的使用

CSS Grid 中 [line-name] 的使用方法

在 CSS Grid 布局中,[line-name] 是为网格线命名的语法,可以让你更方便地引用特定的网格线。

基本用法

css 复制代码
.container {
  display: grid;
  grid-template-rows: [first-line] 100px [second-line] 200px [third-line];
}

如何使用命名网格线

  1. 定位网格项

    css 复制代码
    .item {
      grid-row-start: first-line;
      grid-row-end: second-line;
      /* 或者简写为 */
      grid-row: first-line / second-line;
    }

指定多个名称:

css 复制代码
grid-template-rows: [header-start first-line] 100px [header-end second-line] 200px;

递增命名

css 复制代码
grid-template-rows: repeat(3, [row-line] 100px);
/* 这会创建 row-line 1, row-line 2, row-line 3 */

/* 使用方法 */
grid-row-start: row-line 1;
grid-row-end: row-line 3;

grid-template-areas 中使用命名网格线

1. 隐式网格线命名

css 复制代码
.container {
  display: grid;
  grid-template-areas:
    "header header"
    "sidebar content"
    "footer footer";
  grid-template-rows: 80px 1fr 60px;
  grid-template-columns: 200px 1fr;
}

这样会自动创建以下网格线:

  • 行网格线:header-start, header-end, sidebar-start/content-start, sidebar-end/content-end, footer-start, footer-end
  • 列网格线:header-start/sidebar-start/footer-start,sidebar-end, header-end/content-end/footer-end

2. 在项目定位中使用这些隐式网格线

css 复制代码
.header {
  /* 使用区域名称 */
  grid-area: header;
  
  /* 或者使用隐式网格线 */
  grid-row: header-start / header-end;
  grid-column: header-start / header-end;
}

3. 结合显式命名网格线

css 复制代码
.container {
  display: grid;
  grid-template-areas:
    "header header"
    "sidebar content"
    "footer footer";
  grid-template-rows: [top] 80px [content-start] 1fr [bottom] 60px;
  grid-template-columns: [left] 200px [right] 1fr;
}

现在你可以混合使用:

css 复制代码
.sidebar {
  grid-area: sidebar;
  /* 或者 */
  grid-row: content-start / bottom;
  grid-column: left;
}
相关推荐
GanGuaGua1 小时前
CSS:元素显示模式与背景
前端·javascript·css·html
前端小巷子3 小时前
CSS3 过渡与动画
前端·css·css3
GanGuaGua3 小时前
CSS:字体和文本样式
前端·css
2401_837088505 小时前
CSS相对定位与绝对定位
前端·css
赶飞机偏偏下雨17 小时前
【前端笔记】CSS 选择器的常见用法
前端·css·笔记
Python智慧行囊21 小时前
前端三大件--HTML
css·python
软件技术NINI21 小时前
html css js网页制作成品——HTML+CSS珠海网页设计网页设计(4页)附源码
javascript·css·html
爱编程的鱼21 小时前
如何用CSS实现HTML元素的旋转效果:从基础到高阶应用
前端·css·html
Joker Zxc1 天前
【前端基础】7、CSS的字体属性(font相关)
前端·css
酷小洋1 天前
CSS基础
前端·css