1

我有一个表格,显示从 mysql 数据库中检索到的日历日期。每行代表一个月,每个 td 是该月的日期。每行最多有三个可见日期,之后它们将被隐藏,以便使用 js 轮播查看:

          |---------visible area---------|----hidden area----|           

tr (OCT): |    td        td        td    |
tr (NOV): |    td        td        td    |    td        td
tr (DEC): |    td        td              |

在 tds 填充每个 tr 后,我需要一种方法来设置它的宽度。如果每个 td 是 20rem,那么顶行是 60rem,中间是 100rem,底部是 40rem。我曾尝试用 php 回显 javascript,但没有奏效:

echo '<script>$("#' . $monthWord . '").css("width","' . ($numDates * 20) . 'rem");</script>';

你有什么建议?谢谢你的帮助。

4

2 回答 2

2

我认为您不能像那样为不同的行设置不同的宽度,最后,表格和所有行将具有与最宽行或表格样式属性中设置的宽度相同的宽度。

相反,您应该创建包含所有行的表,然后在固定大小的父容器上使用 overflow:hidden 隐藏您不想被看到的表部分。然后使用javascript相对左或右移动表格。

于 2013-10-29T01:26:06.447 回答
0

根据您的评论,由于一旦从数据库中检索到每行中的项目数,您就应该创建适当的 CSS 类并在生成页面时分配它们。例如,如果您有一个传入的行,并且您检查了count行数组的 (或者您想知道有多少个日期),则循环遍历前三个日期并将它们分配给可见类。然后,对于接下来的两个,只需为它们分配“隐藏直到显示”类。

于 2013-10-29T01:27:29.663 回答