1

我正在使用 CSSLess 和 JQuery 并试图计算无序列表中 LI 元素的数量,以便我可以将该数字除以宽度。

ul.navBar {
    li {
        float: left;
        width: (100% / `$(".navBar li").length()`);
    }
}

输出应像标准导航栏菜单一样并排显示为选项卡。

有没有办法在没有 JQuery 的情况下编写这个?

4

1 回答 1

1

你想这样做:

li { 
    float: left; 
    width: ~`(100/$('.navBar li').length)+'%'`;
} 

~告诉less您不希望它弄乱输出 。

你也可以使用percentage

width: percentage(`1/$('.navBar li').length`);

这仅在您没有使li元素更宽的边框、填充等时才有效。此外,您必须在 .js 的底部body加载它,否则 jQuery 将在您的 DOM 准备好之前运行:

<body>
  ...
  <link rel="stylesheet/less" type="text/css" href="mystyles.less"> 
  <script src="less.min.js" type="text/javascript"></script> 

</body>

演示:http: //jsfiddle.net/jtbowden/ZJ2HV/

于 2012-04-11T20:51:38.067 回答