Html 如何匹配不包含另一个标记的标记?
当一个ul/li不包含另一个标记ul/li时,我想对其进行不同的样式设置 当我了解到我的问题有误导性时,我明确地添加了完整的范围(对此表示抱歉) 小提琴是 html格式如下:Html 如何匹配不包含另一个标记的标记?,html,css,css-selectors,less,Html,Css,Css Selectors,Less,当一个ul/li不包含另一个标记ul/li时,我想对其进行不同的样式设置 当我了解到我的问题有误导性时,我明确地添加了完整的范围(对此表示抱歉) 小提琴是 html格式如下: Two-level nesting: o Grain — Baisse du rendement (end) — Sénescence plus rapide la plante (end) — Sensibilisation accrue à la fusariose des tiges
Two-level nesting:
o Grain
— Baisse du rendement (end)
— Sénescence plus rapide la plante (end)
— Sensibilisation accrue à la fusariose des tiges (final end)
;
o Baisse du rendement ;
o Sénescence plus rapide la plante.
One level:
o Baisse du rendement ;
o Sénescence plus rapide la plante ;
o Sensibilisation accrue à la fusariose des tiges.
两级嵌套:
- 谷物:
- 白色杜效果图
- Sénescence plus rapide la plante酒店
- 敏感性的积累是一种融合
- 白色杜效果图
- Sénescence plus rapide la plante酒店
一级:
- 白色杜效果图
- Sénescence plus rapide la plante酒店
- 敏感性的积累是一种融合
当前CSS(实际上是lessCSS代码)如下所示:
ul {
&>li {
&:after {
content: " ;";
}
&:last-child:after {
content: ".";
}
&>ul {
li:after {
content: " (end)";
}
li:last-child:after {
content: " (final end)";
}
}
}
}
Two-level nesting:
<ul>
<li class="compact">Grain :
<ul>
<li>Baisse du rendement</li>
<li>Sénescence plus rapide la plante</li>
<li>Sensibilisation accrue à la fusariose des tiges</li>
</ul>
</li>
<li>Baisse du rendement</li>
<li>Sénescence plus rapide la plante</li>
</ul>
ul {
&>li {
&:after {
content: " ;";
}
&:last-child:after {
content: ".";
}
&.compact:after {
content: "";
}
}
}
它产生的结果如下:
Two-level nesting:
o Grain
— Baisse du rendement (end)
— Sénescence plus rapide la plante (end)
— Sensibilisation accrue à la fusariose des tiges (final end)
;
o Baisse du rendement ;
o Sénescence plus rapide la plante.
One level:
o Baisse du rendement ;
o Sénescence plus rapide la plante ;
o Sensibilisation accrue à la fusariose des tiges.
一个级别可以,但两个级别不是我想要的
两级应如下,一级保持静止:
o Grain
— Baisse du rendement ;
— Sénescence plus rapide la plante ;
— Sensibilisation accrue à la fusariose des tiges.
(final end)
o Baisse du rendement ;
o Sénescence plus rapide la plante.
正如您可能理解的,一旦CSS工作,我将用空字符串替换(最终结束)
有什么想法吗
更新2:我刚刚在一个类的帮助下找到了一个临时解决方案(不太好,但它很有效)(the)你需要这样的东西 检查这个 结果 CSS
100%工作
我发现了一个临时工作,它利用了一个单独的类,如下所示:
ul {
&>li {
&:after {
content: " ;";
}
&:last-child:after {
content: ".";
}
&>ul {
li:after {
content: " (end)";
}
li:last-child:after {
content: " (final end)";
}
}
}
}
Two-level nesting:
<ul>
<li class="compact">Grain :
<ul>
<li>Baisse du rendement</li>
<li>Sénescence plus rapide la plante</li>
<li>Sensibilisation accrue à la fusariose des tiges</li>
</ul>
</li>
<li>Baisse du rendement</li>
<li>Sénescence plus rapide la plante</li>
</ul>
ul {
&>li {
&:after {
content: " ;";
}
&:last-child:after {
content: ".";
}
&.compact:after {
content: "";
}
}
}
不便之处在于,您需要向数据源添加不具有真正语义的信息。但它现在起作用了
希望有人能找到更好的方法继续
&:last child:after{content:“(final end)”;}
?会有任意级别的嵌套吗?“如果没有,你应该可以。”博尔特:就我的情况而言,我不会进入更多的额外级别。所以两级ul是我需要解决的问题。好吧,我把它作为一个答案发布了。我发现我的问题不是很好,我已经更新了它(包括小提琴)。没有。将你的结果与问题进行比较。@BoltClock我现在更新我的答案检查,这已经成功了。现在我在犹豫-内容:“(结束)
部分似乎完全丢失了。这可能很重要;除非绝对必要,否则我不建议丢弃任意值。