首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

网格模板 | grid-template

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

代码语言:javascript
复制
/* 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
代码语言:txt
复制
Applies to grid containers   [Inherited](inheritance) no   Percentages as each of the properties of the shorthand:
  • grid-template-columns*参考内容区域的相应维度
  • grid-template-rows*参考内容区域的相应维度
代码语言:txt
复制
Media visual   [Computed value](computed_value) as each of the properties of the shorthand:
  • grid-template-columns::按规定,但相对长度转换为绝对长度
  • grid-template-rows::按规定,但相对长度转换为绝对长度
  • grid-template-areas*具体规定
代码语言:txt
复制
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)来防止这些值单独级联。

形式语法

代码语言:javascript
复制
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

代码语言:javascript
复制
#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

代码语言:javascript
复制
<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

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com