nth-child () или first-child? как выбрать первого и второго ребенка в одном - PullRequest
26 голосов
/ 11 января 2012

Я хотел бы выбрать первые два элемента списка в неупорядоченном списке.Я могу выбрать первый элемент следующим образом:

ul li:nth-child(1) a {
    background: none repeat scroll 0 0 beige;
}

ИЛИ

ul li:first-child a {
    background: none repeat scroll 0 0 beige;
}

Я хочу выбрать как первую, так и вторую позицию - как мне это сделать?

Ответы [ 5 ]

44 голосов
/ 11 января 2012

Без использования js или :nth-child (который, я считаю, не поддерживается в IE)

ul li:first-child, ul li:first-child + li {
    list-style: none;
}

Здесь - это демонстрационная версия, протестированная в IE7

42 голосов
/ 11 января 2012

Для выбора первого и второго потомков вы можете использовать один псевдокласс :nth-child(), например:

ul li:nth-child(-n+2) a {
    background: none repeat scroll 0 0 beige;
}
5 голосов
/ 11 января 2012

Это работает в IE9 +, но это не самое короткое.Селектор @ BoltClock - самое короткое решение для IE9 +.Я думаю, что это немного легче понять, поэтому я оставлю это в качестве альтернативы.

ul li:first-child a, ul li:nth-child(2) a
{
   background: none repeat scroll 0 0 biege;
}
3 голосов
/ 11 января 2012

Лучше всего для кросс-браузерной совместимости использовать jQuery и назначить класс для элемента списка.

Что-то вроде ...

$( function() {

 $('li').each( function() {
   if( $(this).index() == 1 || $(this).index() == 2 ) {
     $(this).addClass('first_or_second');
   }
 });

});
0 голосов
/ 22 июля 2016

.trJobStatus ul{
    width: 500px;
  height:500px;
    float: left;
  }
.trJobStatus ul li{
   width: 50px;
  height:50px;
  border: solid 1px #ddd;
  list-style:none;
  display: inline-block;
  text-align: center;
  line-height:50px;
  font-size:25px;
  }

.trJobStatus ul li:nth-child(1),
.trJobStatus ul li:nth-child(5){
  color:red;
  }
 
  <div class="trJobStatus">
  <ul>
<li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
  </ul>
</div>

.trJobStatus ul li: nth child (1), .trJobStatus ul li: nth child (2) {color: #fff;цвет фона: #ddd;}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...