仅当存在多个项目时,才通过CSS对列表进行编号
我有一个XML文档,我正试图通过CSS设计它的样式。此XML的相关片段如下所示:仅当存在多个项目时,才通过CSS对列表进行编号,css,xml,Css,Xml,我有一个XML文档,我正试图通过CSS设计它的样式。此XML的相关片段如下所示: <senseBlock> <prelim>Not numbered</prelim> <sense>first item</sense> <sense>second item</sense> <sense>third item</sense> </senseBlock&g
<senseBlock>
<prelim>Not numbered</prelim>
<sense>first item</sense>
<sense>second item</sense>
<sense>third item</sense>
</senseBlock>
我曾考虑过使用一个相邻的选择器,比如sense+sense
,来检测多个项目,但这并不会设置列表中第一个元素的样式。我几乎得出结论,如果不修改XML,这是不可能的,但我想在我放弃之前,我会将这一挑战扩展到社区
这只需要在最新版本的Safari for iPhone中才能使用。Aha!我自己用CSS3最后一个子伪选择器解决了这个问题。该CSS达到了预期效果:
senseBlock {
display: block;
counter-reset: sense;
}
prelim {
display: block;
}
sense {
display: list-item;
list-style: decimal inside;
}
sense:before {
counter-increment: sense;
}
prelim + sense:last-child {
display: block;
}
senseBlock {
display: block;
counter-reset: sense;
}
prelim {
display: block;
}
sense {
display: list-item;
list-style: decimal inside;
}
sense:before {
counter-increment: sense;
}
prelim + sense:last-child {
display: block;
}