非常教程

CSS参考手册

网格布局 | Grid Layout

网格模板 | grid-template

grid-templateCSS属性是定义一个网格列,行和领域的速记属性。

/* Keyword value */
grid-template: none;

/* grid-template-rows / grid-template-columns values */
grid-template: 100px 1fr / 50px 1fr;
grid-template: auto 1fr / auto 1fr auto;
grid-template: [linename] 100px / [columnname1] 30% [columnname2] 70%;
grid-template: fit-content(100px) / fit-content(40%);

/* grid-template-areas grid-template-rows / grid-template-column values */
grid-template: "a a a"
               "b b b";
grid-template: "a a a" 20%
               "b b b" auto;
grid-template: [header-top] "a a a"     [header-bottom]
                 [main-top] "b b b" 1fr [main-bottom]
                            / auto 1fr auto;

/* Global values */
grid-template: inherit;
grid-template: initial;
grid-template: unset;

可以为速记属性值:grid-template-rowsgrid-template-columns,和grid-template-areas

初始值

作为简写的每个属性:grid-template-columns:none grid-template-rows:none grid-template-areas:none

适用于

网格容器

遗传

没有

百分比

作为简写的每一个属性:grid-template-columns:引用内容区域的相应尺寸grid-template-rows:引用内容区域的对应尺寸

媒体

视觉

计算值

作为简写的每个属性:grid-template-columns:按照规定,但相对长度转换为绝对长度grid-template-rows:按指定,但相对长度转换为绝对长度grid-template-areas:as规定

动画类型

离散的

规范的顺序

形式语法定义的独特的非模糊顺序

  • grid-template-columns*none
  • grid-template-rows*none
  • grid-template-areas*none
Applies to grid containers   [Inherited](inheritance) no   Percentages as each of the properties of the shorthand:
  • grid-template-columns*参考内容区域的相应维度
  • grid-template-rows*参考内容区域的相应维度
Media visual   [Computed value](computed_value) as each of the properties of the shorthand:
  • grid-template-columns::按规定,但相对长度转换为绝对长度
  • grid-template-rows::按规定,但相对长度转换为绝对长度
  • grid-template-areas*具体规定
Animation type discrete   Canonical order the unique non-ambiguous order defined by the formal grammar  

语法

取值

none是一个将所有三个longhand属性设置为的关键字none,这意味着没有明确的网格。没有命名的网格区域。行和列将隐式生成; 他们的大小将由grid-auto-rowsgrid-auto-columns属性决定。<'grid-template-rows'> / <'grid-template-columns'>设置grid-template-rowsgrid-template-columns指定的值,并设置grid-template-areasnone[ <line-names>? <string> <track-size>? <line-names>? ]+ [ / <explicit-track-list> ]?设置grid-template-areas为列出的字符串,grid-template-rows每个字符串后面的轨道大小(填充auto任何缺少的大小),并在每个大小之前/之后定义的命名行中拼接,以及grid-template-columns在斜杠后面指定的轨道列表(或者none,如果未指定)。

注:repeat()函数在这些轨道列表中是不允许的,因为这些轨道是为了直观地将一对一地与“ASCII art”中的行/列对齐。

注:grid速记接受相同的语法,但也复位隐含网格属性为初始值。使用grid(而不是grid-template)来防止这些值单独级联。

形式语法

none | [ <'grid-template-rows'> / <'grid-template-columns'> ] | [ <line-names>? <string> <track-size>? <line-names>? ]+ [ / <explicit-track-list> ]?where 
<line-names> = '[' <custom-ident>* ']'
<track-size> = <track-breadth> | minmax( <inflexible-breadth> , <track-breadth> ) | fit-content( [ <length> | <percentage> ] )
<explicit-track-list> = [ <line-names>? <track-size> ]+ <line-names>?
where 
<track-breadth> = <length-percentage> | <flex> | min-content | max-content | auto
<inflexible-breadth> = <length> | <percentage> | min-content | max-content | auto

where 
<length-percentage> = <length> | <percentage>

实例

CSS

#page {
  display: grid;
  width: 100%;
  height: 200px;
  grid-template: [header-left] "head head" 30px [header-right]
                 [main-left]   "nav  main" 1fr  [main-right]
                 [footer-left] "nav  foot" 30px [footer-right]
                 / 120px 1fr;
}

header {
  background-color: lime;
  grid-area: head;
}

nav {
  background-color: lightblue;
  grid-area: nav;
}

main {
  background-color: yellow;
  grid-area: main;
}

footer {
  background-color: red;
  grid-column: foot;
}

HTML

<section id="page">
  <header>Header</header>
  <nav>Navigation</nav>
  <main>Main area</main>
  <footer>Footer</footer>
</section>

结果

规范

Specification

Status

Comment

CSS Grid LayoutThe definition of 'grid-template' in that specification.

Candidate Recommendation

Initial definition

浏览器兼容性

Feature

Chrome

Edge

Firefox (Gecko)

Internet Explorer

Opera

Safari

Basic support

57.01

No support3

52.0 (52.0)2

No support3

444

No support5

Feature

Android Webview

Chrome for Android

Firefox Mobile (Gecko)

IE Mobile

Opera Mobile

Safari Mobile

Basic support

57.01

57.01

52.0 (52.0)2

No support3

44

No support

网格布局 | Grid Layout相关

1.网格 | CSS Grid
2.网格布局 | CSS Grid Layout
3.网格布局中自动放置 | CSS Grid Layout: Auto-placement in CSS Grid Layout
4.网格布局的基础知识 | CSS Grid Layout: Basic Concepts of Grid Layout
5.网格布置中的框对齐方式 | CSS Grid Layout: Box Alignment in CSS Grid Layout
6.网格布局和渐进增强 | CSS Grid Layout: CSS Grid and Progressive Enhancement
7.网格布局和辅助功能 | CSS Grid Layout: CSS Grid Layout and Accessibility
8.网格,逻辑值和写入模式 | CSS Grid Layout: CSS Grid, Logical Values and Writing Modes
9.网格模板区 | CSS Grid Layout: Grid Template Areas
10.使用命名网格线进行布局 | CSS Grid Layout: Layout using Named Grid Lines
11.语言 编辑 高级 使用CSS网格进行基于行的放置 | CSS Grid Layout: Line-based Placement with CSS Grid
12.使用CSS网格布局实现常见布局 | CSS Grid Layout: Realising common layouts using CSS Grid
13.使用CSS网格布局实现常见布局 | CSS Grid Layout: Realizing common layouts using CSS Grid Layout
14.网格布局与其他布局方法的关系 | CSS Grid Layout: Relationship of Grid Layout
15.适合内容 | fit-content
16.flex value
17.网格 | grid
18.网格区域 | grid-area
19.网格自动列 | grid-auto-columns
20.网格自动流 | grid-auto-flow
21.网格自动行 | grid-auto-rows
22.网格列 | grid-column
23.格列端 | grid-column-end
24.格列隙 | grid-column-gap
25.格列开始 | grid-column-start
26.网格差距 | grid-gap
27.网格行 | grid-row
28.网格行结束 | grid-row-end
29.格列隙 | grid-row-gap
30.格行开始 | grid-row-start
31.网格模板区 | grid-template-areas
32.网格模板列 | grid-template-columns
33.网格模板行 | grid-template-rows
34.设置最小值 最大值函数 | minmax
35.重复 | repeat
CSS

层叠样式表( Cascading Style Sheets )是一种用来表现 HTML 或 XML 等文件样式的计算机语言。CSS 不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

CSS目录

1.动画和转换 | Animations & Transitions
2.背景和边框 | Backgrounds & Borders
3.基本框模型 | Basic Box Model
4.基本用户界面 | Basic User Interface
5.框对齐 | Box Alignment
6. 级联和继承 | Cascading & Inheritance
7.颜色 | Color
8. 合成与混合 | Compositing & Blending
9.条件和规则 | Conditional Rules
10.计数器样式 | Counter Styles
11.设备适配 | Device Adaptation
12.扩展 | Extensions
13.滤镜效果 | Filter Effects
14.灵活的框布局 | Flexible Box Layout
15.字体 | Fonts
16.片段模块 | Fragmentation
17.全屏 API | Fullscreen API
18. 生成内容 | Generated Content
19.网格布局 | Grid Layout
20.图像值 | Image Values
21.初始线格局 | Inline Layout
22.列表和计数器 | Lists & Counters
23.逻辑属性 | Logical Properties
24.面具 | Masking
25.媒体查询 | Media Queries
26.杂项 | Miscellaneous
27.Miscellaneous Level 1
28.Miscellaneous Level 2
29.运动路径 | Motion Path
30. 多列布局 | Multi-column Layout
31.命名空间 | Namespaces
32.项目模型 | Object Model View
33.网页媒体 | Paged Media
34.定位布局 | Positioned Layout
35.伪元素 | Pseudo-
36.节奏大小 | Rhythmic Sizing
37. Ruby布局 | Ruby Layout
38.可缩放矢量图形 | Scalable Vector Graphics
39.滚动快照 | Scroll Snap
40.选择 | Selectors
41.形状 | Shapes
42.文本 | Text
43.文字装饰 | Text Decoration
44.变换 | Transforms
45.值和单位 | Values & Units
46.变量 | Variables
47.写入模型 | Writing Modes
48.CSS 教程
49.CSS 创建
50.CSS Id 和 Class选择器
51.CSS 简介
52.CSS 盒子模型
53.CSS Table(表格)
54.CSS 列表样式(ul)
55.CSS 链接(link)
56.CSS Fonts(字体)
57.CSS Text(文本)
58.CSS Backgrounds(背景)
59.CSS Display(显示) 与 Visibility(可见性)
60.CSS 尺寸 (Dimension)
61.CSS 分组和嵌套
62.CSS 轮廓(outline)属性
63.CSS Border(边框)
64.CSS 图像透明/不透明
65.CSS 导航栏
66.CSS 伪元素
67.CSS 伪类
68.CSS Float(浮动)
69.CSS Position(定位)
70.CSS 总结
71.CSS 属性选择器
72.CSS 媒体类型
73.CSS 图像拼合技术
74.CSS 实例
75.CSS 组合选择符
76.响应式 Web 设计 – 框架
77.响应式 Web 设计 – 视频(Video)
78.CSS 提示工具(Tooltip)
79.CSS 布局 Overflow
80.CSS 计数器
81.CSS 表单