首页 > 解决方案 > 当 ul 只有一个 li 标签时隐藏 ul 和 li 标签

问题描述

请不要将此问题与在 stackoverflow 上发布的其他问题混淆。

注意:使用纯 CSS 隐藏一个元素的列表我的问题涉及父标签。

我有这些css规则:

ul {
    padding: 5px;
}

ul > li:only-child {
    display: none;
}

此规则隐藏第一个ul标签,当它只有一个时。但是ul标签的空间仍然存在。

我如何隐藏两者 ul以及li何时li在我的 html 中声明它?

标签: htmlcss

解决方案


即使在隐藏元素之后您看到的额外间距也是因为您为父元素li包含了 a 。paddingul

所以解决方案是从ul元素中删除填充并将其应用于子li元素。


推荐阅读