如何在UL类的LI中为DIV设置CSS规则?

bon*_*nny 3 html css class

我有一个查询结果列表.该列表将显示如下:

<ul class="result">
    <li></li>
    <li></li>
    <li></li>
    ...
</ul>
Run Code Online (Sandbox Code Playgroud)

现在我想添加类似图层li:before或DIV的内容li.

所以我认为可以这样做:

<ul class="result">
    <li><div id="a"></div></li>
    <li><div id="a"></div></li>
    <li><div id="a"></div></li>
    ...
</ul>
Run Code Online (Sandbox Code Playgroud)

问题是我无法为此设置任何CSS规则?

我试过了:

.wrapper #header #navline #searchbar .dropdown .result li#a{
    background-color: #fff;
    height: 10px;
    width: 15px;
}
Run Code Online (Sandbox Code Playgroud)

以及

.wrapper #header #navline #searchbar .dropdown .result li #a{...}
Run Code Online (Sandbox Code Playgroud)

只是

.wrapper #header #navline #searchbar .dropdown .result #a{...}
Run Code Online (Sandbox Code Playgroud)

但没有任何效果.是否有我的想法有误,或者是没可能添加DIVli的?

Jak*_*lek 9

A)ID为您的元素使用唯一的

B)你的CSS选择器太复杂了

C)应该是.result li #a因为.result li#a这意味着lis具有ID

D)当您使用以下类的类时div:

<ul class="result">
    <li><div class="aDiv"></div></li>
    <li><div class="aDiv"></div></li>
    <li><div class="aDiv"></div></li>
    <li><div class="aDiv"></div></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

你的选择器应该是这样的

.result li .aDiv {
    /* CSS styles */
}
Run Code Online (Sandbox Code Playgroud)

或者,如果有必要(你只想在特定的<ul class="result">内部标记element#someId),你可以使用更复杂的选择器:

#someId .result li .aDiv {
    /* CSS styles */
}
Run Code Online (Sandbox Code Playgroud)

但是,链接ID选择器是多余的:

#someId #someOtherId #finallyThere .result li .aDiv {
    /* CSS styles */
}
Run Code Online (Sandbox Code Playgroud)

因为,如前所述,ID是唯一的