gpt4 book ai didi

html - CSS Treeview(嵌套列表),显示为表格

转载 作者:太空宇宙 更新时间:2023-11-04 10:43:57 27 4
gpt4 key购买 nike

我想获得一个表格,如 HTML 结构的显示,其中嵌套列表 + dl/dt/dd 列表作为给定行的单元格。

到目前为止,这是我能做的: current result

代码:

<ul class="treeview">
<li>
<dl>
<dt>item1</dt>
<dd>
<input type="checkbox" />
</dd>
<dd>
<input type="checkbox" />
</dd>
<dd>
<input type="checkbox" />
</dd>
</dl>
<ul>
<li class="last">
<dl>
<dt>subitem</dt>
<dd>
<input type="checkbox" />
</dd>
<dd>
<input type="checkbox" />
</dd>
<dd>
<input type="checkbox" />
</dd>
</dl>
</li>
</ul>
</li>
<li>
<dl>
<dt>item2</dt>
<dd>
<input type="checkbox" />
</dd>
<dd>
<input type="checkbox" />
</dd>
<dd>
<input type="checkbox" />
</dd>
</dl>
</li>
</ul>

和 CSS:

ul.treeview li dl dt,
ul.treeview li dl dd {
display: inline-block;
}

ul.treeview li dl dt {
width: 200px;
}

ul.treeview li dl dd {
width: 50px;
}

https://jsfiddle.net/wt6gd2f2/

问题出在嵌套列表中,其复选框未与子级列表对齐。知道怎么做吗?

最佳答案

这主要是因为默认的填充和边距,所以你必须先重置它们。

嵌套 li(一个新的默认填充,您可以将其设置为任何值):

li ul { padding-left:25px; }

日:

ul.treeview li dl dd { margin:0; }

.. 现在你可以添加一个负边距(到第一个!)dd 把它带到左边:

ul.treeview li ul dl dd:first-of-type { margin-left:-25px; }

可以直接跳到最后一行,但由于每个浏览器都有自己的默认边距/填充,最好自己设置缩进。

新的 CSS:

ul.treeview li dl dt,
ul.treeview li dl dd {
display: inline-block;
}

ul.treeview li dl dt {
width: 200px;
}

ul.treeview li dl dd {
width: 50px;
margin: 0;
}

ul.treeview li ul {
padding-left: 25px;
}

ul.treeview li ul dl dd:first-of-type {
margin-left:-25px;
}

关于html - CSS Treeview(嵌套列表),显示为表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35589859/

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