html - 为交替的 <DIV> 行提供背景

标签 html css

我有一个 <DIV>结构表,我想为交替行提供背景颜色。

最初是我的 <DIV>结构是这样的(如 Fiddle - *Option 1 所示):*

HTML

<div class="Case">
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
</div>

CSS

 .Case {
    border:1px solid #dbdbde;
    font-weight:normal;
}
.group {
    display:table;
    border-top: 1px solid #dbdbde;
    width: 100%;
}
.group div {
    vertical-align:top;
}
.group:nth-child(even) {
    background-color:#f9f9f9;
}
.subdiv {
    display:table-cell;
    border-left:1px solid #dbdbde;
    padding:10px;
    word-wrap: break-word;
}
.subdiv:nth-child(1) {
    border-left:none;
}

工作正常!!! 但是,当我再添加一行“空”DIV 时,此“.group:nth-child(even) {background-color:#f9f9f9;}”代码停止工作。

(如 Fiddle - *Option 2 所示):*

这是新代码: HTML

<div class="Case">
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
     <div class="empty"></div>
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
     <div class="empty"></div>
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
     <div class="empty"></div>
    <div class="group">
        <div class="Link subdiv">ghdfgdfg</div>
        <div class="Time subdiv"></div>
        <div class="Committer subdiv">gdfg</div>
        <div class="Description subdiv">dfgdfg</div>
        <div class="ChangeSetFiles subdiv">gdfgfgdg</div>
    </div>
     <div class="empty"></div>
</div>

CSS 与为“.empty”类添加的顶级样式相同

   .empty {
    background-color:#ccc;
    display:block;
    width:100%;
    height:15px;
}

请建议我错过了什么???

最佳答案

它会打破第一种格式,但你可以试试

.group:nth-child(4n-1) {
    background-color:#f9f9f9;
}

演示:Fiddle

关于html - 为交替的 <DIV> 行提供背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20548023/

相关文章:

php - 特殊类别帖子的不同循环

css - 在 CSS 字体属性中指定两种尺寸?

javascript - video.js - 在播放期间找到搜索的开始时间

javascript - 我怎么知道哪个脚本文件正在加载 Click 事件

css - 在 Ionic 中垂直居中内容?

html - 如何在调整浏览器大小时更改幻灯片图片?

php - 如何检查是否使用 PHP 检查了两个单选按钮之一?

javascript - Angularjs 与 packery.js 可拖动

html - 使用链接中的完整性参数,导航栏无法在 Bootstrap 中工作

javascript - JQuery click() 事件监听器不工作