Html 仅排除一个元素的CSS属性

Html 仅排除一个元素的CSS属性,html,css,Html,Css,我有一个带有默认CSS文件的页面。在本页中,我有: <ul> <li>A1</li> <li>A2</li> </ul> <br> <ul> <li>B1</li> <li>B2</li> </ul> <br> <ul> <li>C1</li> <li>

我有一个带有默认CSS文件的页面。在本页中,我有:

<ul>
  <li>A1</li>
  <li>A2</li>
</ul>
<br> 

<ul>
  <li>B1</li>
  <li>B2</li>
</ul>
<br> 

<ul>
  <li>C1</li>
  <li>C2</li>
</ul>  
<br> 
我想做的是从默认css中只排除B1和B2。A和C仍应具有默认属性,但B1和B2应具有
PADDING-LEFT:0PX


我使用了
(cssreset-min.css)
,但是所有的css都被删除了。有什么帮助吗?

如果我理解正确,
ul-li:n个孩子(3),ul-li:n个孩子(4){padding left:0;}
应该可以

第n个子选择器针对特定的子对象,在本例中是第3和第4个子对象

编辑:看到编辑后,需要执行的新代码是:(我将使用#container作为包含div的名称,不管是什么)


#容器ul:n子级(2)li{padding left:0;}

给父级ul一个新类:

<ul>
  <li>A1</li>
  <li>A2</li>
</ul>
<ul class="newClass">
  <li>B1</li>
  <li>B2</li>
</ul>
<ul>
  <li>C1</li>
  <li>C2</li>
</ul>

这将适用于所有浏览器。如果你不担心这一点,请使用@Andy answer。

如果你想申请这3个命名列表..只需对B1、B2使用不同id的div..但如果你想申请一个庞大的列表,这将很困难。

你可以尝试以下方法:


这里是另一个不更改HTML的解决方案:

ul:not(:nth-child(3)) {
  padding-left:15px;
}

这可能不适用于所有浏览器,您需要为此更改HTML,并使用@Alex Thomas提供的答案

ul.newClass {
  paddind-left:0px;
}
ul:not(:nth-child(3)) {
  padding-left:15px;
}