CSS 网格和 Sass

标签 css sass css-grid

CSS 工作组成员 Rachel Andrews 在 session 视频中提到 Sass 兼容新的 CSS 网格规范。这样,有人知道在 Sass 的网格模板区域上间隔“ASCII 艺术”的语法吗?我已经检查了 Sass 文档并且找不到任何东西(还)。我得到的错误涉及间距。感谢社区中的任何指示。如果没有,回到 .css 直到那时(:谢谢...

.wrapper
    grid-template-areas: header
                         nav
                         image
                         lead
                         cta //errors occur here with ASCII art grid areas for CSS grid
                         
.header-area
  grid-area: header
  
.nav-area
  grid-area: nav
  
.image
  grid-area: image
  
.lead
  grid-area: lead
  
.cta
  grid-area: cta

最佳答案

网格模板区域必须被引用。每行都是一个字符串:

  grid-template-areas: "header header"
                       "main   sidebar"
                       "footer footer"

已满 working demo here


编辑 上面的例子不再有效,我认为是由于新版本的 Sass 的变化。它无法处理多行表达式 ( issue here )。每个网格行都必须在同一行中定义:

.grid
  display: grid
  grid-template-areas: "header header" "main sidebar" "footer footer"
  grid-gap: 1em

codepen 上的链接演示已更新以匹配。如果您使用 SCSS 语法(带大括号和分号),则没有此限制。

关于CSS 网格和 Sass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42957507/

相关文章:

CSS 网格悬停是 "shuffeling"

css - 如何直接更改链接行为?

html - 绝对元素在 Bootstrap 容器中的位置

javascript - 记住之前是否运行过 javascript,如果它是 [EnjoyHint.js],则不再运行它

html - 如何深度嵌套样式?

html - 如何在 bootstrap 中重新排列 div?

html - CSS 网格布局 - 如何将滚动条放在左侧,并从左到右填充

Chrome 和 Firefox 中的 CSS 网格行为不同

asp.net - 字体在 IE 和 chrome 中不起作用

c# - asp.net 如何在 asp 中使用页内链接关闭对话框