水平列表菜单:计算的相等%宽度

时间:2014-06-23 10:23:22

标签: compass-sass

我是sass /指南针的新手,我现在正在尝试使用mixins。下面的示例显示了一个简单的功能区样式水平菜单的代码,该菜单已经继承了 @include horizo​​ntal-list mixin ,与罗盘捆绑在一起。

此静态菜单有四个列表项,因此我将 li 宽度设置为25%

我的问题。 Compass是否有一种计算动态菜单中列表项的等百分比宽度值的方法,其中包含未定义的项目数?

总计 li / 100 = x% li width

    @mixin ribbon-menu {

        ul {
            padding: 0;
        }
        li {
            width: 25%;  
            border-right: 1px solid $white;
            text-align: center;
        }
        li.last { 
            border-left: 0;
        }
        li.leaf {
            padding: 0;
        }
        a {
            display: block;
            text-decoration: none;
            padding: 10px;
            color: $white;
        }
        a:link, a:visited {
            background: $black;
        }
        a:active, a:hover, a:focus {
            background: $red;
        }
}

1 个答案:

答案 0 :(得分:1)

希望这会对你有帮助。

http://lea.verou.me/2011/01/styling-children-based-on-their-number-with-css3/

@for $i from 1 through 4 {
   li:first-child:nth-last-child(#{$i}),
   li:first-child:nth-last-child(#{$i}) ~ li {
   width: 100% / $i }
 }