♦ grid
◆ 每列高度相等
align-items: stretch;高度由【内容最多的列】所决定。其他列【自动对齐】高度。
♦ css变量
css变量是一种允许你在文档中存储值,然后在需要的地方复用这些值的机制。格式:以字符(–)开头,比如–wp–style–root–padding-top 就是一个自定义属性名。
body {
--wp--style--root--padding-top: 0;
--wp--style--root--padding-right: 2rem;
--wp--style--root--padding-bottom: 0;
--wp--style--root--padding-left: 2rem;
}
此选择器表明这些自定义属性是在body元素的作用域内定义的。这意味着这些属性仅在body元素及其后代元素中可用。
◆ 使用变量
body {
padding-top: var(--wp--style--root--padding-top);
padding-right: var(--wp--style--root--padding-right);
padding-bottom: var(--wp--style--root--padding-bottom);
padding-left: var(--wp--style--root--padding-left);
}
◆ 定义网站容器的网格布局
.site {
display: grid;
grid-template-columns: auto 200px;
grid-template-areas:
"header header"
"main sidebar"
"footer footer";
gap: 10px;
padding: 10px;
}
在第一行 “header header” 里,两个 “header” 表示这一行的两列都属于 “header” 区域。这就如同在表格布局里把这两列合并成了一个大的单元格,也就是让头部区域横跨了两列。
grid-template-columns 属性用于确定每列的宽度。第一列宽度自动调整,第二列宽度固定为 200px。【”main sidebar”】的意思是:即便头部区域横跨了这两列,这两列的宽度依然遵循 grid-template-columns 的设定。
等比例且严格按比例分配
repeat(2, minmax(0, 1fr)) 2列等比例
repeat(3, minmax(0, 1fr)) 3列等比例
多列不等比例,且严格按比例分配,不受内容影响
2 列不等比例(2:1)
grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
/* 第一列占2份,第二列占1份,均不受内容影响 */
3 列不等比例(3:2:1):
grid-template-columns: minmax(0, 3fr) minmax(0, 2fr) minmax(0, 1fr);
和grid-template-columns: 1fr 1fr 写法区别
希望列宽严格等宽,不受内容影响(即使内容溢出):用 repeat(2, minmax(0, 1fr))。
希望列宽在内容不溢出时等宽,溢出时自动适应内容(允许列宽不等):用 1fr 1fr。