2013-08-27 68 views
0

太深有html文件是這樣的:我如何選擇所有子元素這是在DOM

<div id="obselect"> 
     <div id="objects"> 
      <span id="j_id0:j_id2:userPanel"> 
        <table> 
         <tbody><tr> 
          <th class="subheading" width="40%">Available Objects</th> 
          <th class="subheading" width="20%">&nbsp;</th> 
          <th class="subheading" width="40%">Selected Objects</th> 
          </tr> 
          <tr> 
           <td><span id="j_id0:j_id2:snondrag"> 
               <select name="j_id0:j_id2:j_id18" multiple="multiple" size="5">        <option value="001">Account</option> 
                <option value="002">Note</option> 
                <option value="a0j">Text Ad</option> 
              </select> 
            </span></td> 

          </tr> 
         </tbody> 
        </table> 
     </span> 
      </div> 
</div> 

在上面的代碼中,我需要在select標籤應用CSS。但我無法找到解決辦法。在我的服務器上,這個文檔是動態生成的,所以我無法控制它使用哪個標籤。唯一的硬編碼div是最外面的div:<div id="obselect">。有沒有辦法通過使用像這個div內的所有select標籤應用樣式:

#obselect > select 
{ 
    // CSS 
} 
+1

只是用'#obselect select' ....並嘗試 –

+0

求救是奏效的感謝。我只是在'>'和''之間感到困惑。 – Ashwani

+0

好>只會選擇直接的孩子... –

回答

1

如果使用

div#obselect select { 
    ... 
} 

則定樣式應用到的select內的所有元素任何div與身份證'obselect',不知道它發生在DOM有多深。

(請注意,選擇>尤其是指僅選擇直接孩子。)

2

做到這一點的方法是使用:

#obselect select 
{ 
    // CSS 
} 

不是:

#obselect > select 
{ 
    // CSS 
} 

這是因爲第二個目標的元素的直接孩子與選擇不是所有的人

1

你可以離開了>選擇的,這意味着你只希望它適用於直接後裔:

#obselect select 
{ 
    // Targets all select elements under #obselect 
} 
相關問題