【问题标题】:Need help styling html tables using colspan需要帮助使用 colspan 设置 html 表格的样式
【发布时间】:2018-06-25 20:29:35
【问题描述】:

我有动态数据,它总是会发生变化。例如:

这就是我现在拥有的:

有时是这样的:

|==============|======|====|====|
|List of people|John  |June|Tom |
|Date Join     |2017  |2018|2016|
|Hobby         |soccer|         |
|Remark        | test test      |

有时我会变成这样:

|==============|======|======|=====|
|List of people|John  |June  |Tom  |
|Date Join     |2017  |2018  |2016 |
|Hobby         |soccer|tennis|     |
|Remark        | test test         |

我想做这样的事情:(有什么办法吗?)

|==============|======|====|====|
|List of people|John  |June|Tom |
|Date Join     |2017  |2018|2016|
|Hobby         |     soccer     |
|Remark        | test test      |

或者像这样:

|==============|======|====|====|
|List of people|John  |June|Tom |
|Date Join     |2017  |2018|2016|
|Hobby         |  soccer|Tennis |
|Remark        | test test      |

这是我使用的代码:(这是我对人员、日期和爱好列表的处理方式)

@foreach($object7 as $val)
    <tr>
      <th style="border: 1px black solid">List of people</th>
      <?php 
            $test = $val->people;
             $testa = rtrim($test, ', ');
            $array =  explode(', ', $testa);
            $count4 = count($array);
       ?>
       @foreach($array as $item)
      @if(($val->people == NULL) || ( $count4 <= 1))
       <td style="border: 1px black solid" colspan="8">
        @else
    <td style="border: 1px black solid" colspan="1">
      @endif
       {{$item}}
    </td>
      @endforeach 
    </tr>
     @endforeach

编辑: 备注行只有 1 个值,其余的可以有超过 1 个值或更多。我想要的是基于这一切,我怎样才能让它们都一样长?

【问题讨论】:

    标签: php html laravel html-table


    【解决方案1】:

    尝试“colgroup”标签让我们尝试设置它们的宽度以使其修复:

    @foreach($object7 as $val)
    <tr>
       <td style="border: 1px black solid" with="40%">List of people</td>
      <?php 
        $test = $val->people;
         $testa = rtrim($test, ', ');
        $array =  explode(', ', $testa);
        $count4 = count($array);
    ?>
    
     @foreach($array as $item)
      @if(($val->people == NULL) || ( $count4 <= 1))
          <td style="border: 1px black solid" with="60%">
      @else if($count4 == 2)
          <td style="border: 1px black solid" with="40%">
      @else
        <td style="border: 1px black solid" with="20%">
      @endif
        {{$item}}
        </td>
    @endforeach 
    </tr>
    

    【讨论】:

    • 感谢回复,但 colgroup 只是让宽度增加而已。或者如果表格标签一侧,我是否必须放在 标签上?
    • 你可以用 colgroup 格式化 td 的大小,去掉 colspan。 colspan 只是声明您将占用另一个跨度,并已指明数字。我编辑了代码并删除了 colspan。试试看,让我知道结果谢谢兄弟
    • 我看到它等待一段时间
    • 嗨,我尝试删除 colspan 并使用 colgroup,现在有 3 列或 2 列的那些在表格之外。而第一列中的那些都是对齐的。抱歉,如果你没问题,我可以在 1 小时内回复你吗?先去吃午饭
    • 我需要知道你的变量你从哪里得到值,因为我可以在这里看到你在 $array 变量中插入标签“日期加入”和“爱好”?
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签