gpt4 book ai didi

jquery - 我们如何根据元素深度设置 CSS Margin?

转载 作者:行者123 更新时间:2023-11-28 10:16:39 24 4
gpt4 key购买 nike

我有以下 html 结构 -

<ul>
<li><span>1st</span>
<ul>
<li><span>2nd</span>
<ul>
<li><span>3th</span>
<ul>
<li><span>4th</span>
<ul>
<li><span>5th</span>
<ul>
...
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>

并且想要这样输出 -

enter image description here

为此,我将 CSS 子选择器与以下类一起使用 -

ul li span
{
padding-left:0px;
}


ul li > ul li span
{
padding-left:10px;
}

ul li > ul li > ul li span
{
padding-left:20px;
}

ul li > ul li > ul li > ul li span
{
padding-left:30px;
}

ul li > ul li > ul li > ul li > ul li span
{
padding-left:40px;
}

Demo

它工作完美,但在这里我想使用任何速记 CSS 技巧获得我想要的输出(不像上面的父子结构,即 ul li > ul li > ul li > ul li ....)。因为在我的网页上我有 N-levelsUL-LI 结构。而且我不想定义 N-levels CSS 类来设置边距。

意思是我不想用这样的 N-levels 结构定义我的类 -

ul li > ul li > ul li > ul li > ul li > .....  > (n-1)ul li > ul li span
{
padding-left:(n) * 10px; //-- Set margin according level
}

那么,CSS 中有什么方法可以完成这项工作吗?

如果不能,我可以使用 Jquery 来实现吗?如何实现?

我不想要这个 - enter image description here

我希望每个子节点都像那样从“0px”开始 -

enter image description here

提前致谢,任何帮助都将不胜感激......!!!

最佳答案

只需将 padding-left: 10px; 放在 ul 本身

关于jquery - 我们如何根据元素深度设置 CSS Margin?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22785497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com