我有一个元素列表,我想对所有元素应用一些更改,除了9和11,所以我写了类似的东西:
.myList li:not(:nth-child(9)),
.myList li:not(:nth-child(11)) {
background-color: greenyellow;
}
<ol class="myList">
<li>One</li>
<li>Two</li>
<li>Three</li>
<li>Four</li>
<li>Five</li>
<li>Six</li>
<li>Seven</li>
<li>Eight</li>
<li>Nine</li>
<li>Ten</li>
<li>Eleven</li>
<li>Twelve</li>
<li>Thirteen</li>
<li>Fourteen</li>
</ol>
此代码将更改应用于所有<li>
,没有例外,但如果我只放一个,它就会起作用!像这样:(这种方式将更改应用于除9之外的所有更改
.myList li:not(:nth-child(9)) {
background-color: greenyellow;
}
如何在代码中使用 :not 伪类添加两个或更多不同的兄弟姐妹号码?
答案 0 :(得分:1)
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<version>1</version>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>default-cli</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>${project.artifactId}</finalName>
<descriptors>
<descriptor>dist-all.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
适用于所有元素的原因是因为9和11都至少处于1个条件。
第9个不是第11个孩子所以css适用,反之亦然
在你的情况下,你只想做
<?xml version="1.0" encoding="UTF-8"?>
<assembly>
<id>default-cli</id>
<formats>
<format>tgz</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>src/app</directory>
<outputDirectory>target</outputDirectory>
</fileSet>
</fileSets>
</assembly>
这样它就可以选择任何不是第9或第11的东西
答案 1 :(得分:1)
你的代码不能正常工作,因为第一行是指所有标记exept编号9(包括编号11),第二行是指所有标记exept编号11(包括编号9)所以这两行一起指的是所有标签。 您可以将类添加到li编号9和编号11 然后你的代码变成了 .myList li:not(.class)