Html 有人能告诉我为什么当我改变填充而不是另一个填充时,这个列表消失了吗?

Html 有人能告诉我为什么当我改变填充而不是另一个填充时,这个列表消失了吗?,html,css,Html,Css,每当我更改ul.navButtons的填充并将填充设置为0时,它都会工作,但是list.navspacer不会随之移动(显然) 所以我想把ul.navspacters设置为padding 0,但它消失了。如何防止这种情况发生?我已经建立了一个 正文{ 背景:#333; } 李{ 背景:rgba(232,232,232,1); 字体家族:“舞蹈脚本”,草书; 字体大小:100%; } li.p1{ 位置:绝对位置; 填充:15px 140px 15px 20px; 边界半径:0px 4px 0p

每当我更改ul.navButtons的填充并将填充设置为0时,它都会工作,但是list.navspacer不会随之移动(显然)

所以我想把ul.navspacters设置为padding 0,但它消失了。如何防止这种情况发生?我已经建立了一个

正文{
背景:#333;
}
李{
背景:rgba(232,232,232,1);
字体家族:“舞蹈脚本”,草书;
字体大小:100%;
}
li.p1{
位置:绝对位置;
填充:15px 140px 15px 20px;
边界半径:0px 4px 0px;
}
li.p2{
边缘顶部:65px;
位置:绝对位置;
填充:15px 140px 15px 20px;
边界半径:0px 4px 0px;
}
li.p3{
边缘顶部:130像素;
位置:绝对位置;
填充:15px 140px 15px 20px;
边界半径:0px 4px 0px;
}
保险商实验室{
保证金:0;
位置:绝对位置;
列表样式:无;
光标:指针;
字号:166%;
}
.1{
位置:绝对位置;
利润率最高:130%;
背景:黑色;
填充:13%200%43%24%;
边界半径:0px 4px 0px;
游标:默认值;
}
.2{
位置:绝对位置;
利润率最高:293%;
背景:黑色;
填充:13%200%43%24%;
边界半径:0px 4px 0px;
游标:默认值;
}

    列表 列表 列表

您的导航间隔器没有内容,也没有指定的大小,因此它们出现的唯一原因是浏览器默认为ul项目保留的40px填充

你应该重新考虑你是如何制作这些导航项目的,不应该依赖于位置:绝对,当它不是真正需要的时候

也许这就是你要找的

正文{
背景:#333;
}
李{
背景:rgb(232,232,232);
字体家族:“舞蹈脚本”,草书;
字体大小:100%;
边界半径:0px 4px 0px;
利润率:15px0;
光标:指针;
}
保险商实验室{
保证金:0;
填充:0;
列表样式:无;
字号:166%;
背景色:黑色;
}

    列表 列表 列表

黑色条纹消失的原因是,第二个无序列表中的列表项处于绝对位置,并使用相对单位填充。因此,它们引用其父元素样式中的零填充,其任何百分比也为零。由于列表项没有其他内容可占用空间,因此显示尺寸最终为0 x 0


看起来另一个答案提供了一个可接受的替代方案。

为什么需要这种填充?在0之后添加px可能会解决这个问题…我已经尝试了两种方法,添加px也会使它消失所以它们重叠。为什么不把空格和项目放在同一个列表中,这样就不需要绝对位置?也许重叠,但他应该看到主题,除非背景定义是的,这就是我要找的。但是,是否有可能使黑色间隔变短?我试图创造一个钢琴效果。我自己自学了这些东西,在这方面需要帮助。事实上我接受了你所说的并在列表中应用了文本,就像一堆| | | |一样,它工作得非常好。谢谢你的帮助。