tka*_*ahn 5 jquery element margins css-selectors
我已成功使用jQuery :nth-child()选择器从div的长列表中的每个第四个元素中删除右边距.它看起来像这样:
$(".myDivClass:nth-child(4n+4)").css("margin-right", 0);
Run Code Online (Sandbox Code Playgroud)
但该页面也是开放的用户交互(通过jQuery),用户可以做的一件事是隐藏/显示元素.隐藏元素时,其样式设置为"display:none".元素是浮动的,所以如果你删除一行中间的一个元素,下面一行中的元素会跳起来,如下所示:

我的第一个想法是通过首先为所有元素添加边距然后从每个第四个可见元素中删除它来重做整个事物; 这样的事情:
$(".myDivClass").css("margin-right","20px");
$(".myDivClass:visible:nth-child(4n+4").css("margin-right", 0);
Run Code Online (Sandbox Code Playgroud)
但第二行什么都不做,我认为你不能像上面的例子那样堆叠伪选择器(?)
有这个问题的解决方案吗?有一个更好的方法吗?
提前致谢!
/托马斯
我知道这不是你问题的直接答案,但是当我做了类似的事情,浮动一堆块元素,它们之间有一些间距,我通常会保留所有这些元素的余量但是让它们的父容器有(在这种情况)负边距 - 右边等于元素之间的间距.
这样父母仍然可以适合你想要的地方,但是孩子们只需要按照自己需要的空间漂浮.
| 归档时间: |
|
| 查看次数: |
5023 次 |
| 最近记录: |