CSS-ный тип отказывается подчиняться

0

К сожалению, для меня селектор nth-of-type отказывается подчиняться заказам в простом сценарии, показанном здесь

Это HTML, который используется для тестирования:

<div class="help-title">
    TITLE
</div>
<div class="help-warn-left">
    ERROR
</div>
<div class="help-warn-right">
    ERROR MESS
</div>

<div class="help-section">
    <div class="help-header">
        TEXT1
    </div>
    <div class="help-body">
        TEXT2
    </div>
</div>


<div class="help-section">
    <div class="help-header">
        TEXT3
    </div>
    <div class="help-body">
        TEXT4
    </div>
</div>


<div class="help-section">
    <div class="help-header">
        TEXT5
    </div>
    <div class="help-body">
        TEXT6
    </div>
</div>


<div class="help-section">
    <div class="help-header">
        TEXT7
    </div>
    <div class="help-body">
        TEXT8
    </div>
</div>

Это CSS:

div.help-section{
    color:blue;
    /*background:yellow;*/
}

div.help-section:nth-of-type(2)
{
background:#ff0000;
}

Когда я удаляю комментарий вокруг желтого фона, раздел справки будет иметь желтый фон, поэтому он явно согласен с набором фона. Однако приведенный ниже порядок требует, чтобы второй справочный раздел имел красный фон, но он просто отказывается повиноваться мне! Это мой браузер? Firefox v24.0? Или это я не знаю, что делает nth-of-type?

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

  • 0
    Это не ваш браузер.
  • 0
    Пожалуйста, определите, что вы хотите, чтобы произошло.
Показать ещё 2 комментария
Теги:
css-selectors

2 ответа

0
Лучший ответ

Другой вариант - использовать другой элемент только для этих разделов

играть на скрипке

HTML

<section class="help-section">
    <div class="help-header">
        TEXT1
    </div>
    <div class="help-body">
        TEXT2
    </div>
</section>

CSS

section:nth-of-type(2) {
    background-color: red;
}
  • 0
    Не знаю, почему кто-то опроверг это, это допустимый обходной путь, если на странице нет других разделов. Поэтому я принимаю этот ответ, несмотря на депрессию.
  • 0
    Вещи, которые можно извлечь из обоих. Странно, хотя. Думаю, я не до конца понимаю, почему он не видит их как группу. Я почти всегда помещаю вещи в списки, и меня всегда подбирают.
3

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

div.container div.help-section:nth-of-type(3)
{
    color:red;
}

и добавить

<div class="container"></div>

вокруг вашего вспомогательного раздела. Я пробовал это с помощью селектора, но не повезло.

Подробнее здесь: http://reference.sitepoint.com/css/pseudoclass-nthoftype

JSFIDDLE

http://jsfiddle.net/HJm49/1/

  • 0
    извините, я изменил его с 2-го типа на 3-й.
  • 0
    Да ... это то, что я также нашел ... Кажется, что ему нужна более конкретная область видимости jsfiddle.net/sheriffderek/JXN92 Это работает, если вы удалите предыдущие div-ы из разделов OP.
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню