html-table用rowspan合并行后,单双行颜色问题,谢谢指导。

问题描述

table用rowspan合并行后,单双行颜色问题,谢谢指导。
 <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" type="text/css" href="css/count.css">
</head>
<body>
<h1>our count</h1>
<p><img src="" alt=""></p>
<p>this is our count,i am very happy!</p>
    <table>
        <caption>The Count</caption>
        <tr>
            <th>City</th>
            <th>Date</th>
            <th>Temperature</th>
            <th>Altitude</th>
            <th>Population</th>
            <th>Diner Rating</th>
        </tr>
        <tr>
            <td>WA</td>
            <td>June 15th</td>
            <td>75</td>
            <td>1204ft</td>
            <td>29686</td>
            <td>4/5</td>
        </tr>
        <tr>
            <td>ID</td>
            <td>June 25th</td>
            <td>74</td>
            <td>204ft</td>
            <td>2968</td>
            <td>3/5</td>
        </tr>
        <tr>
            <td>UT</td>
            <td>July 10th</td>
            <td>75</td>
            <td>1204ft</td>
            <td>29686</td>
            <td>4/5</td>
        </tr>
        <tr>
            <td>CO</td>
            <td>July 23rd</td>
            <td>75</td>
            <td>124ft</td>
            <td>2986</td>
            <td>4/9</td>
        </tr>
        <tr>
            <td rowspan="2">NM</td> <!--  表示这一列,两行合并 -->
            <td>August 9th</td>
            <td>75</td>
            <td rowspan="2">104ft</td>
            <td rowspan="2">29686</td>
            <td>1/5</td>
        </tr>
        <tr>

            <td>August 27th</td>
            <td>85</td>

            <td>
                <table>
                    <tr>
                        <th>Tess</th>
                        <td>5/5</td>
                    </tr>
                    <tr>
                        <th>Tony</th>
                        <td>4/5</td>
                    </tr>
                </table>
            </td>
        </tr>
        <tr>
            <td>AZ</td>
            <td>August 18th</td>
            <td>175</td>
            <td>120ft</td>
            <td>2966</td>
            <td>3/5</td>
        </tr>
    </table>
</body>
</html>

css代码:
*{
    padding: 0px;
    margin: 0px;
}
body{
    width: 1024px;
}
p,h1{
    text-align: center;
}

table{
    width:80%;
    margin: 5% auto ;
    border: thin solid black;
    caption-side: bottom;
/*  border-spacing: 0px; */
    border-collapse: collapse;
}

td,th{
    border: 1px dotted gray;
    padding: 5px;
    margin: 0px;
}
caption{
    font-style: italic;
    padding-top: 8px;
}
th{
    background-color: #cc6600;
}
/* .cellcolor{
    background-color: #fcba7a;
} */

tr:nth-child(2n){
    background-color: beige;
}
tr:nth-child(2n+1){
    background-color: fcba7a;
}
table table th{
    background-color: white;
}

//这样合并的地方的一行出现的颜色不是想要的,怎么解决呢?有没有不用在单独给这些地方设置样式的方法呢?

解决方案

手动控制,不要用子nth-child这种选择器,定义2个样式来切换

 <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>

*{
    padding: 0px;
    margin: 0px;
}
body{
    width: 1024px;
}
p,h1{
    text-align: center;
}

table{
    width:80%;
    margin: 5% auto ;
    border: thin solid black;
    caption-side: bottom;
/*  border-spacing: 0px; */
    border-collapse: collapse;
}

td,th{
    border: 1px dotted gray;
    padding: 5px;
    margin: 0px;
}
caption{
    font-style: italic;
    padding-top: 8px;
}
th{
    background-color: #cc6600;
}
/* .cellcolor{
    background-color: #fcba7a;
} */

tr.odd{
    background-color: beige;
}
tr.even{
    background-color:#fcba7a;
}
table table th{
    background-color: white;
}
    </style>
</head>
<body>
    <h1>our count</h1>
    <p><img src="" alt=""></p>
    <p>this is our count,i am very happy!</p>
    <table>
        <caption>The Count</caption>
        <tr>
            <th>City</th>
            <th>Date</th>
            <th>Temperature</th>
            <th>Altitude</th>
            <th>Population</th>
            <th>Diner Rating</th>
        </tr>
        <tr class="odd">
            <td>WA</td>
            <td>June 15th</td>
            <td>75</td>
            <td>1204ft</td>
            <td>29686</td>
            <td>4/5</td>
        </tr>
        <tr class="even">
            <td>ID</td>
            <td>June 25th</td>
            <td>74</td>
            <td>204ft</td>
            <td>2968</td>
            <td>3/5</td>
        </tr>
        <tr class="odd">
            <td>UT</td>
            <td>July 10th</td>
            <td>75</td>
            <td>1204ft</td>
            <td>29686</td>
            <td>4/5</td>
        </tr>
        <tr class="even">
            <td>CO</td>
            <td>July 23rd</td>
            <td>75</td>
            <td>124ft</td>
            <td>2986</td>
            <td>4/9</td>
        </tr>
        <tr class="odd">
            <td rowspan="2">NM</td> <!--  表示这一列,两行合并 -->
            <td>August 9th</td>
            <td>75</td>
            <td rowspan="2">104ft</td>
            <td rowspan="2">29686</td>
            <td>1/5</td>
        </tr>
        <tr class="odd">

            <td>August 27th</td>
            <td>85</td>

            <td>
                <table>
                    <tr>
                        <th>Tess</th>
                        <td>5/5</td>
                    </tr>
                    <tr>
                        <th>Tony</th>
                        <td>4/5</td>
                    </tr>
                </table>
            </td>
        </tr>
        <tr class="even">
            <td>AZ</td>
            <td>August 18th</td>
            <td>175</td>
            <td>120ft</td>
            <td>2966</td>
            <td>3/5</td>
        </tr>
    </table>
</body>
</html>
时间: 2025-01-30 06:00:07

html-table用rowspan合并行后,单双行颜色问题,谢谢指导。的相关文章

WORD表头有列合并行,ROW[*]设置行背景色为什么无效

问题描述 如图"这张表格,使用wordtable.Rows[3].Shading.BackgroundPatternColor=Microsoft.Office.Interop.Word.WdColor.wdColorWhite;设置指定行背景色无效,也没有报错,但是后面的代码就被跳过如果指定wordtable.Cell(3,1).Shading.BackgroundPatternColor=Microsoft.Office.Interop.Word.WdColor.wdColorWhite;是

运用jquery实现table单双行不同显示并能单行选中_jquery

复制代码 代码如下: $(document).ready(function(){ $("p:odd").css("background-color", "#bbf"); $("p:even").css("background-color","#ffc"); $("p").click(function () { $("p").each(functio

table内容是遍历出来的,并且有合并行未合并行,想实现隔行变色该怎么做。

问题描述 table内容是遍历出来的,并且有合并行未合并行,想实现隔行变色该怎么做. <table id=""sample2"" width=""100%"" border=""0"" cellpadding=""0"" cellspacing=""0""> <thead style=&qu

请教jsp的合并行的table 数据怎么查怎么遍历?

问题描述 请教jsp的合并行的table 数据怎么查怎么遍历? 解决方案 两个方法可以实现: 第一种可以查出分类为一个TABLE在左边,再查所有的记录 放一个TAABLE在右边然后两个对齐. 第二种就是算出来,以类别排序查出记录,然后foreach中的tr,当遍历到这个每一类的第 一个的时候td 给一个合并总数.

表单-淘宝发布宝贝宝贝规格js单击颜色分类自动生成table 项目今天要上线了,请务必帮忙解决谢谢

问题描述 淘宝发布宝贝宝贝规格js单击颜色分类自动生成table 项目今天要上线了,请务必帮忙解决谢谢 需求:点击一个单选框出现表单 每增加一个下边就添加一个 以此类推 动态添加表单 http://jsbin.com/nejoqulipe/edit?html,output这是在线demo 这是我的邮箱529865274@qq.com,请及时联系我 解决方案 类似下面这样 <!DOCTYPE html> <html> <head> <script src="

使用&amp;amp;lt;c:forEach 遍历后台传来的数据成table,删除行后怎么确保行号自动排序?

问题描述 使用<c:forEach 遍历后台传来的数据成table,删除行后怎么确保行号自动排序? 1C 这是开头的部分: <tbody id=""add_OmsPurchaseCheck_table""> <c:if test=""${fn:length(OmsPurchaseCheckModelList) > 0 }""> <c:forEach items=""

js控制表单奇偶行样式的简单方法

这篇文章介绍了js控制表单奇偶行样式的简单方法,有需呀偶的朋友可以参考一下   一.如果使用JQuery的话可以直接JQuery的 复制代码 代码如下: $("tr:odd").addClass("clazzName"); $("tr:even").addClass("clazzName"); 二.如果是使用纯js的话 1.先获取table标签,var table = document.getElementById() 2.再

php更新mysql后获取改变行数的方法_php技巧

本文实例讲述了php更新mysql后获取改变行数的方法.分享给大家供大家参考.具体分析如下: 一个php更新mysql后获取改变的行数,在php中提供mysql函数来获取最后执行查询所影响的记录数:mysql_affected_rows(), 返回最近一次与 连接句柄 关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数.FOUND_ROWS() : select ROW_COUNT():update delete insert. 下面就是文章的主要内容描述,代码如下: 复

php 中 define 定义常量和单双引号问题

一.define定义常量问题        <?php   define('DATABASE', 'MYSQL');   define('DATABASE_USER', 'ROOT');   define('DATABASE_PASSWORD', 'PASSWORD');   ?>                直接使用"DATABASE"常量,代表的就是"MYSQL".                $arr = array('fruit'=>'