边缘被忽视。特异性问题

时间:2013-05-24 11:02:54

标签: css sass zurb-foundation

我使用的是Foundation 4框架,并且遇到了一个问题,即边框被框架的边距覆盖,这意味着我无法在不使用边框的情况下对某些元素应用边距!important关键字。

下面是我的_grid.scss文件,该文件为移动浏览器应用了布局网格。

%row {
    @include grid-row;
}

%columns-1 {
    @include grid-column(1);
}

%columns-2 {
    @include grid-column(2);
}

%columns-3 {
    @include grid-column(3);
}

%columns-4 {
    @include grid-column(4);
}

%columns-5 {
    @include grid-column(5);
}

%columns-6 {
    @include grid-column(6);
}

%columns-7 {
    @include grid-column(7);
}

%columns-8 {
    @include grid-column(8);
}

%columns-9 {
    @include grid-column(9);
}

%columns-10 {
    @include grid-column(10);
}

%columns-11 {
    @include grid-column(11);
}

%columns-12 {
    @include grid-column(12);
}

header {
    @extend %row;

    #branding {
        @extend %columns-6;
    }

    #main-navigation {
        @extend %columns-6;
        position: absolute;
        top: 0;
        left: 0;
    }

    #mobile-navigation-toggle {

    }
}

#games-list {
    @extend %row;
}

#blog-entries {
    @extend %row;

    .entry {
        @extend %row;

        img {
            @extend %columns-4;
        }

        .entry-blurb {
            @extend %columns-8;
        }
    }
}

footer {

    #footer-links {
        @extend %row;

        .link-block {
            @extend %columns-6;
        }
    }
}

这是base.scss文件中受影响的行:

.entry {
margin-bottom: 10px;

.entry-blurb {
    .entry-description {
    display: none;
        }
}
}

只有在申请时才​​会有效!看看Web开发工具我可以看到问题,但不知道如何解决它:

enter image description here

我认为问题可能是因为我在SASS中为网格定义占位符以避免代码膨胀。通常你会使用mixin,代码将直接包含在CSS中的元素中,然后覆盖该元素的边距。

1 个答案:

答案 0 :(得分:0)

延伸vs mixin在这里不会产生任何影响。您的选择器具有太多的特异性,无法被这样一个简单的选择器覆盖:#blog-entries .entry.entry的更具体的实例。

您有几个选择:

  • 不要嵌套你的选择器(避免首先使用像#blog-entries .entry这样强大的选择器)
  • 让您的第二个选择器具有与第一个选择器相同的特异性(或更多)
  • 使用!important