【发布时间】:2019-10-22 16:49:42
【问题描述】:
我正在学习 CSS 网格,在尝试布局和使用语义 html 的同时遇到了一些问题
https://codepen.io/oscarryz/pen/oNNBKyd
所以基本上我在做 3x3 的网格,左右两边是空白,中间是内容
.grid-container {
display: grid;
grid-template-columns: 1fr 40em 1fr;
grid-template-rows: 1fr 1fr 1fr;
grid-template-areas:
" . header . "
" . content . "
" . footer . ";
}
.header {
grid-area: header;
}
.content {
grid-area: content;
}
.footer {
grid-area: footer;
}
.header, .content, .footer {
border: 1px solid red;
}
<div class="grid-container">
<header>
<div class="header">header</div>
</header>
<main>
<div class="content">content</div>
</main>
<footer>
<div class="footer">footer</div>
</footer>
</div>
从上面的 codepen 中可以看出,这是行不通的。如果我remove the semantic tags it works,显然必须有正确的方法来做到这一点
【问题讨论】:
-
display: contents是一种解决方法
标签: html css css-grid semantic-markup