2

我有一个带有默认 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,但无法修改

ul {
  paddind-left:15px;
} 

我想要做的是从默认 css 中只排除 B1 和 B2 。A 和 C 仍应具有默认属性,但 B1 和 B2 应具有PADDING-LEFT:0PX;.

我用过(cssreset-min.css),但所有的css都被淘汰了。有什么帮助吗?

4

5 回答 5

3

给父 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>

然后做:

ul.newClass {
  paddind-left:0px;
}

这将适用于所有浏览器。如果您对此不关心,请使用@Andy 回答。

于 2012-08-09T08:50:44.300 回答
0

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

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

例子

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

于 2012-08-09T09:03:25.323 回答
0

如果您想申请这 3 个命名列表..只需使用具有不同 ID 的 B1、B2 的 div ....但是如果您想申请一个巨大的列表,那就很难了

于 2012-08-09T08:52:32.603 回答
0

如果我理解正确,ul li:nth-child(3), ul li:nth-child(4) { padding-left: 0; }应该工作

nth-child 选择器针对特定的孩子,在本例中是第 3 个和第 4 个

编辑:看到您的编辑后,您需要做的新代码是:(我将使用#container 作为包含 div 的名称,无论是什么)

#container ul:nth-child(2) li { padding-left: 0; }

于 2012-08-09T08:50:01.377 回答
0

你可以尝试这样的事情:

http://jsfiddle.net/4X62Y/

于 2012-08-09T08:58:20.493 回答