我想要一个样式列表,在第一级没有留下余量..但是在后续的,水平的子列表上做..有谁知道怎么做?
<ul>
<li>no margin</li>
<li>
<ul>
<li>yes margin</li>
</ul>
</li>
</ul>
(不将css类添加到第一级ul或更改任何代码)
答案 0 :(得分:8)
如果您希望将此应用于应用样式表的每个页面上的所有<ul>
,则可以使用:
ul {/* Remove margin for all <ul>s (and padding, because different browsers have different default styles) */
margin-left: 0;
padding-left: 0;
}
ul ul {/* Add a margin for any <ul> inside another <ul> */
margin-left: 2em;
}
但如果您只想将其应用于某些列表,则需要在HTML中添加一些内容以识别这些列表(正如其他答案所建议的那样)。
答案 1 :(得分:3)
第一个ul是身体的直接后裔吗?我知道你说没有在代码中添加css类但我认为在样式表中添加东西不是问题吗? 如果是这样,您可以使用样式声明,如:
body > ul{
margin-left:0px;
}
或者如果你知道div确实存在于:
#your_id > ul{
margin-left:0px;
}
您可能还需要考虑默认填充。
由于
答案 2 :(得分:3)
您应该清除主<ul>
的边距,然后设置<ul>
元素中<li>
的边距。
ul {
margin-left: 0px;
}
li > ul {
margin-left: 10px;
}
答案 3 :(得分:1)
确实,但对TommyBs的答案有一点补充:你需要在html list item标签中应用你使用的id,如下所示:
<ul>
<li id="your_id">no margin</li>
<li>
<ul>
<li>yes margin</li>
</ul>
</li>
</ul>
在css中,相应的行将是
li#your_id {
margin-left:0px;
}
答案 4 :(得分:0)
在我的情况下,有默认边距,我将它们设置为0
8bit