2012-01-05 155 views
-2

我如何可以选择:从CSS选择元素

<a href="javascript:void(0)" class="chzn-single"> 

开始:

<div class="field_with_errors"> 

下面是完整的代码:

<div class="field_with_errors"> 
    <label for="municipio_uf">Uf</label> 
</div> 
<select id="municipio_uf_id" name="municipio[uf_id]" style="display: none; " class="chzn-done"> 
    <option value="">-</option> 
    <option value="1">Parana</option> 
    <option value="2">Sao Paulo</option> 
    <option value="3">Minas Gerais</option> 
    <option value="4">Mato Grosso</option> 
    <option value="5">Mato Grosso do Sul</option> 
    <option value="6">Santa Catarina</option> 
</select> 
<div id="municipio_uf_id_chzn" class="chzn-container chzn-container-single" style="width: 265px;"> 
    <a href="javascript:void(0)" class="chzn-single"><span>-</span> 
    <div> 
     <b></b> 
    </div> 
    </a>  
</div> 

感谢。

+0

我不知道我完全理解你的问题,但用CSS你不能。您可以针对'chzn-container'或'chzn-container-single'选择'chzn-single',因为这是一个父亲。如果这还不够独特,你可能需要用一个唯一的ID将这整个片段包装在一个div中。 – Rudu 2012-01-05 19:17:57

+0

'#municipio_uf_id_chzn> a',因为'municipio_uf_id_chzn'无论如何都是唯一的 – bevacqua 2012-01-05 19:18:45

+0

Rails automaticaly在发生错误时向第一个div添加“field-with-errors”类。所以这是我的出发点。 – 2012-01-05 19:20:57

回答

1

如果你的结构将永远是这样认为的,你可以使用:

div.field_with_errors + select.chzn-done + div.chzn-container a.chzn-single

+是兄弟选择,所以它只会选择特定的a.chzn-single

+0

谢谢!作品加油! – 2012-01-05 19:25:45

1

考虑一个后代选择器。在你的CSS中:

#municipio_uf_id_chzn a.chzn-single 
{ 
    ... css stuff ... 
} 

或者相邻的兄弟选择器+。像这样的(同内特B的答案):

div.field_with_errors + #municipio_uf_id + #municipio_uf_id_chzn a.chzn-single 

在这两个,我觉得后代是作为IDS是更好的选择应该是在页面上独一无二的。