2015-01-13 4 views
0

У меня есть этот HTML (надрезается для краткости)CSS только выбрать элемент с помощью селектора братьев и сестер

<label> 
    <div class="label">Condition</div> 
    <select> 
     <option value="blah" selected="selected">Blah</option> 
     <option value="other...">other...</option> 
    </select> 
    <input type="text" name="condition" value="" style="display: none;"> 
</label> 

Я хочу, чтобы получить выбрать элемент. Единственный статический/не общий множитель, который я могу видеть, это вход [name = 'condition'], но общий селектор селектора не поможет, потому что «select» появляется перед входом. Так что что-то вроде input[name='condition'] ~ select не работает.

Этот элемент перемещается, иногда это первый, иногда двадцатый, и может быть любым и всеми местоположениями между ними, поэтому nth не будет работать.

Я знаю, как получить это с помощью Javascript/Jquery, но это не вариант. У меня есть только селектор CSS. Поэтому большой вопрос: есть ли способ получить «выбор» из этого HTML с помощью только селекторов CSS?

Есть ли способ получить элемент select, который имеет элемент option со значением = 'something'?

+0

Я совсем не понимаю, что вы хотите сделать. Вы можете получить выбор с помощью 'select {/ * styles * /}' - если вам нужно отличить этот выбор от других на странице, вы можете попробовать 'div.label + select {/ * styles * /}', но вы можете 't выберите элемент, основанный на одном из его элементов _child_. –

+1

Вы не можете получить доступ к элементу '