相关疑难解决方法(0)

带有类的第一个元素的CSS选择器

我有一堆带有类名的元素red,但我似乎无法class="red"使用以下CSS规则选择第一个元素:

.red:first-child {
    border: 5px solid red;
}
Run Code Online (Sandbox Code Playgroud)
<p class="red"></p>
<div class="red"></div>
Run Code Online (Sandbox Code Playgroud)

这个选择器有什么问题,我该如何纠正?

感谢这些评论,我发现该元素必须是其父母的第一个孩子才能被选中,这与我的情况不同.我有以下结构,这条规则失败,如评论中所述:

.home .red:first-child {
    border: 1px solid red;
}
Run Code Online (Sandbox Code Playgroud)
<div class="home">
    <span>blah</span>
    <p class="red">first</p>
    <p class="red">second</p>
    <p class="red">third</p>
    <p class="red">fourth</p>
</div>
Run Code Online (Sandbox Code Playgroud)

我怎样才能让第一个孩子上课red

css css-selectors

883
推荐指数
12
解决办法
93万
查看次数

CSS3选择器:具有类名的第一个类型?

是否可以使用CSS3选择器:first-of-type选择具有给定类名的第一个元素?我的测试没有成功,所以我认为不是吗?

守则(http://jsfiddle.net/YWY4L/):

p:first-of-type {color:blue}
p.myclass1:first-of-type {color:red}
.myclass2:first-of-type {color:green}
Run Code Online (Sandbox Code Playgroud)
<div>
  <div>This text should appear as normal</div>
  <p>This text should be blue.</p>
  <p class="myclass1">This text should appear red.</p>
  <p class="myclass2">This text should appear green.</p>
</div>
Run Code Online (Sandbox Code Playgroud)

css css-selectors css3

213
推荐指数
6
解决办法
16万
查看次数

我可以组合:nth-​​child()或:nth-​​of-type()与任意选择器?

有没有办法选择匹配(或不匹配)任意选择器的每个第n个孩子?例如,我想选择每个奇数表行,但是在行的子集中:

table.myClass tr.row:nth-child(odd) {
  ...
}
Run Code Online (Sandbox Code Playgroud)
<table class="myClass">
  <tr>
    <td>Row
  <tr class="row"> <!-- I want this -->
    <td>Row
  <tr class="row">
    <td>Row
  <tr class="row"> <!-- And this -->
    <td>Row
</table>
Run Code Online (Sandbox Code Playgroud)

:nth-child()似乎只计算所有tr元素,无论它们是否属于"行"类,所以我最终得到一个偶数 "行"元素而不是我正在寻找的两个元素.同样的事情发生在:nth-of-type().

有人可以解释原因吗?

css css-selectors css3

103
推荐指数
2
解决办法
3万
查看次数

:带有类的第n个子(偶数/奇数)选择器

我正在尝试将奇数/偶数选择器应用于类父类的列表中的所有元素.

HTML:

<ul>
    <li class="parent">green</li>
    <li class="parent">red</li>
    <li>ho ho ho</li>
    <li class="parent">green</li>
    <li class="parent">red</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

CSS:

.parent:nth-child(odd) {
    background-color: green;
}

.parent:nth-child(even) {
    background-color: red;
}

ul {
    width:100px;
    height: 100px;
    display: block;
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

链接到jsFiddle

但颜色正在重置.我希望列表项是文本的颜色.

有没有办法做到这一点?

html css html5 css-selectors css3

19
推荐指数
3
解决办法
5万
查看次数

如何为类使用nth-of-type - 而不是元素

我正在为图像库制作一个简单的HTML.图库的每一行都可以有2,3或4个图像.(在一个2图像行中,每个图像元素都被命名type-2,同样的type-3type-4.)

现在我想选择每行的最后一个元素来设置自定义边距.我的HTML是这样的:

<div id="content">
    <div class="type-2"></div>
    <div class="type-2"></div> <!-- I want this, 2n+0 of type-2 -->
    <div class="type-3"></div>
    <div class="type-3"></div>
    <div class="type-3"></div> <!-- this, 3n+0 of type-3 -->
    <div class="type-4"></div>
    <div class="type-4"></div>
    <div class="type-4"></div>
    <div class="type-4"></div> <!-- this, 4n+0 of type-4 -->
    <div class="type-2"></div>
    <div class="type-2"></div> <!-- this -->
    <div class="type-3"></div>
    <div class="type-3"></div>
    <div class="type-3"></div> <!-- this -->
    <div class="type-4"></div>
    <div class="type-4"></div>
    <div class="type-4"></div>
    <div class="type-4"></div> <!-- this -->
</div>
Run Code Online (Sandbox Code Playgroud)

我认为以下CSS可以工作,但它没有:

.type-2:nth-of-type(2n+0) {margin-right:0;}
.type-3:nth-of-type(3n+0) …
Run Code Online (Sandbox Code Playgroud)

html css css-selectors css3

14
推荐指数
3
解决办法
2万
查看次数

nth-of-type 无法按预期工作

<div class="test">
    <div class="test1"></div>
    <div class="test2"></div>
    <div class="test3"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

为什么

.test3:nth-of-type(3) {height: 100px;background: black;}
Run Code Online (Sandbox Code Playgroud)

工作,但是

.test3:nth-of-type(1) {height: 100px;background: black;}
Run Code Online (Sandbox Code Playgroud)

不是?在这种情况下,第 n 个类型的工作与第 n 个孩子相同吗?

html css css-selectors

6
推荐指数
1
解决办法
3045
查看次数

第n个奇数类型/甚至无法按预期工作

如果我删除第一个div,它会完美地工作。

但是,如果我有第一个没有该类的div,它就无法正常工作。

测试1应该是蓝色,下一个测试应该是红色,依此类推。

当我有另一个div时,它无法正常工作。我该如何解决这个问题?

.el:nth-of-type(odd) {
  background-color: blue;
}
.el:nth-of-type(even) {
  background-color: red;
}
Run Code Online (Sandbox Code Playgroud)
<div id="content">
  <div>nothing</div>
  <div class="el">Test 1</div>
  <div class="el">Test 1</div>
  <div class="el">Test 1</div>
  <div class="el">Test 1</div>
  <div class="el">Test 1</div>
  <div class="el">Test 1</div>
</div>
Run Code Online (Sandbox Code Playgroud)

html css css-selectors

3
推荐指数
2
解决办法
4015
查看次数

nth-of-type包括其他元素

我有一个项目网格,在某些项目后,有一个间隔.我试图:nth-of-type将样式应用到我不想应用于右侧的第一列项目.但是,当我有分隔符时,CSS似乎感到困惑.

https://jsfiddle.net/yquw291h/2/

正如你所看到的那样,在每个额外的div之后计数会消失,但CSS当然应该只考虑每个.box

有没有办法可以让它只影响每个项目?我只希望第一列有某些样式,我也很高兴使用JS解决方案.

HTML

<div>
    <div class="box">1</div>
    <div class="box">2</div>
    <div class="box">3</div>
    <div class="box">4</div>
    <div class="splitter">splitter</div>
    <div class="box">1</div>
    <div class="box">2</div>
    <div class="box">3</div>
    <div class="splitter">splitter</div>
    <div class="box">1</div>
    <div class="box">2</div>
    <div class="box">3</div>
    <div class="box">4</div>
    <div class="box">5</div>
    <div class="box">6</div>
    <div class="box">7</div>
    <div class="box">8</div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

.box {
    width: 48%;
    float: left;
    height: 30px;
    background: #ccc;
}

.box:nth-of-type(odd){
    margin-right: 4%;
    background-color: red;
}

.splitter {
    width: 100%;
    float: left;
}
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

1
推荐指数
2
解决办法
293
查看次数

标签 统计

css ×8

css-selectors ×7

html ×5

css3 ×4

html5 ×1

javascript ×1

jquery ×1