相关疑难解决方法(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万
查看次数

结合:CSS中的last-child与:not(.class)选择器

是否可以选择没有班级attr的最后一个孩子?像这样:

<tr> ... </tr>
<tr> ... </tr>
<tr> ... </tr>
<tr class="table_vert_controls"> ... </tr>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我想选择第三行.

我尝试了以下,但没有用:

tr:not(.table_vert_controls):last-child
Run Code Online (Sandbox Code Playgroud)

提前致谢.

css css-selectors css3

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

使用 CSS 或 JS 标记溢出 div 中最后一个可见的子级

我有一个带inline-blockdiv 的酒吧。其中一些在视口之外,因为我white-space:nowrap; overflow: hidden;为容器设置了:。我正在寻找选择最后一个可见孩子的方法。我所说的可见是指 div 被放置(最好是完全)在它的容器区域中。

据我所知,CSS 和 jQuery 中都没有这样的选择器。最接近的是 jQuery 的,:visible但它说所有的 div 都是可见的,因为它们占用了页面布局中的空间。

我看到的唯一出路是在加载和每次调整大小时枚举 div,以便通过求和其宽度、填充和边距来计算 div 是否仍在容器中。

您有更好的想法吗?

#container {
  white-space:nowrap;
  overflow: hidden;
}

.element {
  display: inline-block;
  vertical-align:top;
}
Run Code Online (Sandbox Code Playgroud)
<div id="container">
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/>
  </div>
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/>
  </div>
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/>
  </div>
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/>
  </div>
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/>
  </div>
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/>
  </div>
  <div class="element">
    <img src="http://placehold.it/150x150" alt=""/> …
Run Code Online (Sandbox Code Playgroud)

javascript css jquery jquery-selectors

5
推荐指数
1
解决办法
561
查看次数

视图中元素的 CSS 选择器

是否有针对view 中的内容(即在视口中可见的内容)的 CSS 选择器?

css css-selectors intersection-observer

5
推荐指数
1
解决办法
1123
查看次数

将CSS样式应用于最后一个可见元素

我已经读过这个帖子: 一个CSS选择器来获取最后一个可见的div

但是,这对我不起作用.我想知道我哪弄错了?

我的CSS

.panel-i{
   position: relative;
   margin: 4px 0;
   text-align: right;
   border: 1px solid;
   border-right: none;    
   min-height: 76px;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 8px 10px 0;
   -webkit-flex: 1 1 30%;
   -moz-flex: 1 1 30%;
   -ms-flex: 1 1 30%;
   flex: 1 1 30%;  /* flex-grow flex-shrink, flex-basis */
 }

.panel-i:not( [style*="display: none"]):last-child{
    border-right: 1px solid;
}
Run Code Online (Sandbox Code Playgroud)

和HTML

<div class="money_boxesRow">
   <div class="panel-i">
       <div class="panel-i-label">
          One Off Charge                                    
       </div>
       <span>                        
           £ <span id="total_one_off_charge">0.00</span>
       </span>
   </div>

   <!-- ... -->

   <div class="panel-i …
Run Code Online (Sandbox Code Playgroud)

html css css3

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

CSS选择器最后一个可见子

CSS中是否有一种方法可以将CSS规则应用于最后一个可见的子节点而不知道使元素不可见的类?

例:

<ul>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
  <li style="display: none">Item 5</li>
<ul>

<style>
  ul > li {
    border: 1px solid black;
  }

  // Remove right border from last visible child
  // This does not work of course, but this is what I am looking for
  ul > li:last-child:not([style="display: none"]) {
    border-right: none;
  }
</style>
Run Code Online (Sandbox Code Playgroud)

要明确:我正在寻找一个基于规则的选择器,而不是基于类的CSS而不是Javascript.但是这个回答一个CSS选择器来获取最后一个可见的div例如不起作用.这里的问题是:最后一个孩子和:不能合并.:last-child([style ="display:block"])也不起作用(当li有dispay:block时),因为它查看style属性而不是CSS规则.

bootstrap中的示例(注意:hidden-md是一个示例,它也可以是使用display:none的其他类):

<ul>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
  <li class="hidden-md">Item 5</li>
<ul>
Run Code Online (Sandbox Code Playgroud)

css

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