Сценарий
У меня есть селектор CSS, который должен отображать суб-контент при нажатии метки. Селектор расположен по строкам input:checked + element + element
, давая этому окончательному элементу отображение блока (по умолчанию - нет). Проблема в том, что он работает во всех основных браузерах, за исключением webkit. Chrome, Safari и мобильный браузер для Android (v2.2 извините, я отстаю от времени), все не отображают элемент. Когда я проверяю элемент в Chrome, он показывает, что он должен быть display: block
, но он не отображает его. Я могу отключить и проверить свойство в инструментах разработчика, и он отображается, но не раньше.
Я предполагаю, что это ошибка в webkit.
Вопрос
Вот многочастный вопрос: это известная ошибка в webkit? Я что-то делаю с моими селекторами? И как я могу обойти проблему для веб-браузеров (любые творческие предложения)?
код
HTML
<input id="c1" type="checkbox">
<label for="c1">Ein</label>
<section>Content</section>
<input id="c2" type="checkbox">
<label for="c2">Zwei</label>
<section>Content</section>
<input id="c3" type="checkbox">
<label for="c3">Drei</label>
<section>Content</section>
CSS
input {
float:left;
clear:left;
visibility: hidden;
position:absolute;
}
label {
color:green;
display:block;
cursor:pointer;
}
section {
display:none;
}
label:after {
content:" +";
}
input:checked + label:after {
content:" -";
}
input:checked + label + section {
display:block;
}
Demo
Демо: http://jsbin.com/epibin/2
Источник: http://jsbin.com/epibin/2/edit