Html 仅为无序列表的第一级设置样式
我有这样一份清单:Html 仅为无序列表的第一级设置样式,html,css,Html,Css,我有这样一份清单: <ul id="main"> <li>January <ul> <li>test</li> <li>test2</li> </ul> </li> <li>February
<ul id="main">
<li>January
<ul>
<li>test</li>
<li>test2</li>
</ul>
</li>
<li>February
<ul>
<li>test</li>
<li>test2</li>
</ul>
</li>
</ul>
子列表旁边仍然有一个加号。。。我会做错什么?添加另一条规则来处理李的所有其他案例:
ul > li{
color: red;
/*specifically*/
list-style-image: none;
}
给css一个默认值,这样您的特定案例将成为例外。这应该可以:
#main li {
list-style-image: none;
}
#main > li {
cursor: pointer;
list-style-image: url('plus_sign.gif');
}
列表样式图像是一个可继承的属性,因此它从其父级获取值。您可以尝试此css,它看起来像您想要的
#main{
cursor:pointer;
list-style-image:url('http://www.w3schools.com/cssref/sqpurple.gif');
}
#main ul{
/*If you don't want the hallow circles*/
list-style:none;
/*if you want the hollow cirles, remove list-style and uncomment list-style-image:none
list-style-image:none;
*/
}
它将仅在1月和2月显示加号.gif(本例中为sqpurple.gif)。
请参见创建另一种样式并修改ul以利用该类:
.main > li {
cursor: pointer;
list-style-image: url('imageurl');
}
.main > li > ul > li {
cursor: auto;
list-style-image: none;
}
<ul class="main">
<li>January
<ul>
<li> test</li>
<li>test2</li>
</ul>
</li>
<li>February
<ul>
<li>test</li>
<li>test2</li>
</ul>
</li>
</ul>
.main>li{
光标:指针;
列表样式图像:url('imageurl');
}
.main>li>ul>li{
光标:自动;
列表样式图像:无;
}
- 一月
- 试验
- 测试2
- 二月
- 试验
- 测试2
确定您没有其他规则吗?几乎可以肯定的是,我没有其他规则……当我将你的JSFIDLE粘贴到我的html文件中并在本地显示它时,它会在每个li上显示猫(对猫表示抱歉)。如果您检查您喜爱的浏览器工具中的元素,它应该会显示正在应用的CSS规则。看起来该规则正在应用于所有li元素。不知道是什么原因造成的。在复制和粘贴css后,它会将它们全部放回默认列表项目符号。实心子弹,然后是空心。@oshft91将“plus.png”改为“plus_sign.gif”是的,我抓到了-不行。我们将尝试创建一个全新的.html和.css文件。+1是唯一一个解释它是可继承属性的文件。谢谢你的回答。我开始怀疑在我的环境中是否有这样的事情发生,因为我已经一个字符一个字符地输入了,但仍然一无所获。令人沮丧。也许你应该在一个新的文件中尝试,仅仅是这些规则,甚至是一些更简单的方法来尝试并找到问题的根源。希望它最终对你有用。
.main > li {
cursor: pointer;
list-style-image: url('imageurl');
}
.main > li > ul > li {
cursor: auto;
list-style-image: none;
}
<ul class="main">
<li>January
<ul>
<li> test</li>
<li>test2</li>
</ul>
</li>
<li>February
<ul>
<li>test</li>
<li>test2</li>
</ul>
</li>
</ul>