2015-08-17 55 views
0

這裏是我的原代碼:Jquery UI Accordion在每個h標籤之後需要div嗎?

<div id="accordion"> 
    <h1>Header #1</h1> 
    <div> 
     <ul> 
      <li><a href="#">List item #1</a></li> 
     </ul> 
    </div> 

    <h1>Header #2</h1> 
    <div> 
     <ul> 
      <li><a href="#">List item #1</a></li> 
      <li><a href="#">List item #2</a></li> 
      <li><a href="#">List item #3</a></li> 
      <li><a href="#">List item #4</a></li> 
     </ul> 
    </div> 
</div> 

我試圖刪除內div標記和代碼的工作就好了。唯一的區別是,當我使用div標籤圍繞ul標籤時,它會在它們周圍創建一些邊距。

我遇到過的關於Jquery UI Accordion的每一篇文檔或教程,在h標籤後面使用div標籤,但由於它沒有它們,所以我會問自己是否需要它們。

非常感謝。 :)

+1

它可能被用來獲得與html'可能會也可能不會影響該功能的'適當的結構。所以,當你刪除任何元素,你可能需要檢查所有的功能,看看它沒有破壞任何地方.. :) –

回答

1

剛剛掃描了jQuery UI github源碼,手風琴似乎在類ui-accordion-content上工作 - 所以它應該沒問題 - 只要您使用塊元素(p/div/ul等)。

https://github.com/jquery/jquery-ui/search?utf8=✓&q=ui-accordion-content

+0

所以我可以使用幾乎每個元素,如果它有'display:block'? – Sipo

+1

理論上,它應該是可能的 - 但由於相關的瀏覽器樣式,建議使用中性容器 - 如div。我試着用p標籤,它仍然有效。爲什麼你不能去一個div的任何理由? – aarjithn

+0

因爲內容是一個列表,並且它有一個完善的容器 - 'ul',那爲什麼要用另一個包圍呢? – Sipo