2012-04-13 33 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,以获得所需的高度/颜色鬼混。

,或者我应该考虑使用表

请不要。表有目的,但不适用于布局。