2012-04-13 135 views
0

我在Cake-baked(cake bake)測試安裝導致產品控制器及其視圖,如index.cpt,add.cpt,edit.ctp等。這些視圖正在使用的CSS文件,並且有兩個部分:actionproducts indexCSS div標籤類名稱(CakePHP)

我在CSS文件中看到了actions div標籤,但我沒有看到products index。這些部門的代碼如下。

/** containers **/ 
div.form, 
div.index, 
div.view { 
    float:right; 
    width:76%; 
    border-left:1px solid #666; 
    padding:10px 2%; 
} 
div.actions { 
    float:left; 
    width:16%; 
    padding:10px 1.5%; 
} 

我的問題是:

  1. 爲什麼div.view下定義products index的參數?

  2. 我看到div.formdiv.index,結尾,而不是空的括號。這是什麼意思?

  3. 現在,該頁面被垂直分爲兩部分,如下所示。

    --------------------- 
    | |    | 
    | |    | 
    | |    | 
    | |    | 
    | |    | 
    --------------------- 
    

什麼理想的方法來使用做出以下?是否可以單獨使用這些div標籤進行以下操作,還是應該使用表格進行調查?我想將導航欄放在左側和頂部,如所有頁面上所示。我正在使用app/views/layouts/default.ctpthis->element()

--------------------- 
    | |    | 
    | |--------------| 
    | |    | 
    | |    | 
    | |    | 
    --------------------- 

回答

1

我不知道CakePHP的,但你的大部分問題都僅限於CSS。

爲什麼在div.view下定義產品索引的參數?

這是最有可能由於有一個通用的實現一個什麼樣的觀點。所有「視圖」共享相同的佈局,因此如果每個頁面的CSS都相同,則無需在CSS文件中重複自己。只需用班級標記div(這就是他們在那裏),然後移動。

我看到div.form和div.index結束與他們的行,而不是 空方括號。這是什麼意思?

這是CSS中的組合選擇器。當多個選擇器共享相同的樣式時,可以在規則集聲明之前用逗號分隔的列表表示它們。在你的例子中,div.form, div.index, div.view都共享相同的樣式聲明。使用空括號會給沒有樣式聲明

http://www.w3.org/TR/selectors/#grouping

關於第三個問題,假定你有一些HTML如下

<div> 
    <div class="actions"><!--your actions --></div> 
    <div class="view"><!-- your product index view--></div> 
</div> 

你可以添加一個div標籤作爲div.view標籤的孩子,以實現在頂部的導航欄。像這樣:

<div> 
    <div class="actions"><!--your actions --></div> 
    <div class="view"> 
    <div class="custom_nav_bar"><!-- your new html --></div> 
    <div class="view_content"> 
     <!-- your product index view--> 
    </div> 
    </div> 
</div> 

然後你可以的div.custom_nav_bardiv.view_content的CSS,以獲得所需的高度/顏色鬼混。

,或者我應該考慮使用表

請不要。表有目的,但不適用於佈局。