0

出于某种原因,我的 div 样式.tile不尊重我的$gutter-widthor$column-width值(我不确定是哪一个),并且这些 div 没有正确排列到+susy-grid-background参考网格。

在下面的屏幕截图中,您可以看到方形青色 div 不遵守$columns-width$gutter-width值。最重要的是,一行应该有 4 个这样的青色 div,但第 4 个被击倒到第二行。

为什么会这样?这是一个亚像素舍入问题吗?

在此处输入图像描述

_base.sass代码

/* Susy Settings */

$total-columns  : 5             
$column-width   : 4em            
$gutter-width   : 1em            
$grid-padding   : $gutter-width  

$desktop : 14

// Susy-grid-background override to draw out horizontal lines
=susy-grid-background       
  +grid-background($total-columns, $column-width, $gutter-width, $base-line-height, $gutter-width, $force-fluid: true)  

style.sass代码

@import compass
@import susy
@import normalize
@import base


$base-font-size: 18px
$base-line-height: 30px
+establish-baseline

ul
  background-color: rgb(111, 50%, 250)

li
  background: rgba(200,50,0,.2)
  text-align: right

a
  background: rgba(0,220,0,.2)
  display: block

h1
  +adjust-font-size-to(90px)
  +adjust-leading-to(4, 90px)
  +leader(2, 90px)
  background: rgba(0,20,200,.3)

h1#logo
  +adjust-font-size-to(30px)
  +adjust-leading-to(2, 30px)
  +leader(0, 30px)

h2
  +adjust-font-size-to(25px)
  +adjust-leading-to(1, 25px)
  background: rgba(250,250,0,.2)

p
  +leader(1)
  +trailer(1)
  background: rgba(0,220,0,.2)

.page, header, .pagenav, .main, .pagefoot
  +transition(all .3s ease)

.page                                
  +container($total-columns, $tablet, $desktop)
  +susy-grid-background


/* BREAKPOINTS */

+at-breakpoint($desktop)
  .page
    +susy-grid-background

  header
    +container
    +susy-grid-background
    background: rgba(250,0,0,.2)
    position: fixed
    left: 0
    right: 0

    h1#logo a
      +hide-text
      float: right
      +span-columns(2)
      background: rgba(200,10,250,.1)

    .pagenav
      clear: both
      float: right
      +span-columns(2)
      background: rgba(0,140,250,.3)

  .main
    +span-columns(12 omega)
    +leader(2)
    background: rgba(1,240,200,.3)

    .tile
      +span-columns(3, 12)
      +adjust-leading-to(9)
      +trailer(1)
      background: #0f6   

  .pagefoot
    background: rgba(45,0,120,.3)
    +span-columns(12,12)     
4

1 回答 1

0

多亏了埃里克,我被提到了一个他之前在这里回答过的较早的类似问题:

我的 Susy 布局出现奇怪的错位

Susy 网格(默认情况下)内部是流动的。所有流体网格在浏览器端都会受到一定数量的亚像素舍入。也就是说,您主要看到的是背景网格上的亚像素舍入,这通常比实际的元素舍入更差。这在文档中有所说明- 网格背景是一个粗略的指南,而不是像素精确的标尺。

Susy 还具有隔离选项,可用于阻止子像素错误复合

所以对于这个特殊的问题,我只是替换+span-columns(3,12)+isolate-grid(3, 12)所以我的最终.tilesass 看起来像这样

.tile
  +isolate-grid(3, 12)
  +adjust-leading-to(9)
  +trailer(1)
  background: #0f6   

这就是结果

在此处输入图像描述

于 2013-05-30T14:54:29.297 回答