删除带有Singularitygs的行上的最后一个檐沟



我一直在努力找出使用奇点显示项目列表的最佳解决方案。

我想基本上删除每行最后一项的填充,但将该填充添加回所有项目的整体项目宽度中。

我认为这个解决方案更多地与css有关,而不是与奇点有关,但也许在奇点中有一个好的解决方案我遗漏了?

这些项目最终将由cms定期添加。

示例:http://sassmeister.com/gist/7916151

好吧,有很多事情你应该考虑。

首先,Singularity和Breakpoint尚未与Sass 3.3兼容,而Sasmeister.com已经在使用Sass 3.3。确保您在项目中使用Sass 3.2.x。要演示Sass+HTML,请考虑使用SassBin.com.

其次,您使用的是12px排水沟。这是不正确的。檐沟被指定为相对于单列单位的无单位值。所以,当你有两列和12px的排水沟时,你实际上告诉奇点,让排水沟比列大12倍。

相反,提供类似以下的相对排水沟:$gutters: 0.1

第三,您为中等大小指定了一个4列网格,但只能将其用作两列网格。如果您在项目中没有使用四列,我建议您省略四列的定义,继续使用两列网格。

第四,您正在容器上设置一个轮廓,但它永远不会正确显示,因为容器的高度为零。它的高度为零,因为它的所有内容都是浮动的。

要使容器包含浮动内容,必须对容器应用clearfix。用谷歌搜索一下。应用clearfix最简单的方法是使用Compass附带的pie-clearfix mixin。但我建议您使用Toolkit附带的%clearfix-micro扩展。

第五(甚至有这样的词吗?),为了消除右侧的空白,您必须对每行的最后一项应用最后一个float-span。要正确地做到这一点,您必须了解nth-child是如何工作的。我强烈建议你用谷歌搜索一下。

简而言之,nth-child接受一个看起来像An+B的自变量,其中A和B是整数。A应该等于列数,B是要寻址的列数。在处理最后一列时,在您的情况下,B等于A。例如,整个事情看起来像nth-child(3n+3)

第六,将奇点跨度应用于不同断点,使其累积。当您一次覆盖所有项目的跨度,以便在每个媒体查询中重新定义所有项目时,这是可以的。

但是,当您选择性地应用样式(应用到每行的最后一项)时,您也必须取消它们。这是一件非常不愉快的事情。

相反,您应该缩小媒体查询的范围,以便它们只处理两个断点之间的特定切片。在这种情况下,生成样式不会累积。

以下是如果您使用了我的所有建议,您的代码会是什么样子:http://sassbin.com/gist/7951326/

Seventh(我的舌头很疼),考虑使用断点切片器扩展,这是断点的一个小型包装器,可以快速轻松地切片断点范围。

以下是如果使用断点切片器,代码的外观:http://sassbin.com/gist/7951724/

Eighthly,如果确实需要固定排水沟,则应该设置$gutter-styles: 'fixed'选项。

当然你可以这样做:

&:nth-child(3n) {
  margin-right: 0;
}

在奇点维基上,它似乎表明这应该有效:

&:nth-child(3n) {
      @include float-span(2, 'last');

}

但它没有,或者我不了解它的功能。

感谢您的广泛回答。

我很清楚第n个子选择器。我走了那条路,但决定这对我来说不是一个干净的解决方案。

我知道我没有清理浮子。。。不是我真正的问题。

根据文档,设置12px的固定高度是正确的:https://github.com/Team-Sass/Singularity/wiki/Creating-Grids#fixed-排水沟

我需要固定的排水沟。这就是问题的全部症结所在。

我开始制作自己的固定排水沟液柱解决方案,到目前为止我很喜欢:http://codepen.io/joshuarule/pen/zsfEo

相关内容

  • 没有找到相关文章

最新更新