Почему это не работает? http://jsfiddle.net/84C5W/1/
<style>
p{
display : none;
}
p.visible:last-of-type {
display : block;
}
</style>
<div>
<p class="visible">This should be hidden</p>
<p class="visible">This should be displayed</p>
<p class="">This should be hidden</p>
</div>
Фактически ни один из моих <p> видны. Если я удалю ссылку на ".visible" в таблице стилей, это покажет последний <p> в div, но это не то, что я хочу.
Конечно, я мог бы всегда держать один "видимый" всегда, но это для презентации opens.js, и у меня нет контроля над javascript. Только таблица стилей...
Edit: Хорошо, так очевидно. Class: last-of-type не работает. По словам @Justus Romijn, псевдокласс класса last-of-type был предназначен только для выбора элементов (что, на мой взгляд, чрезвычайно ограничивает, и помещает этот конкретный псевдокласс в более или менее бесполезное состояние).
В любом случае, я хочу перефразировать мой вопрос на этом этапе: как я могу выбрать последний элемент внутри div с классом ".visible"? Я НЕ хочу использовать Javascript для этого.