【问题标题】:PHP dynamic table width only displaying correctly in chrome (not Firefox, Internet Explorer or Safari). Why is this?PHP 动态表格宽度仅在 chrome(不是 Firefox、Internet Explorer 或 Safari)中正确显示。为什么是这样?
【发布时间】:2013-08-20 17:06:38
【问题描述】:

图像显示在问题描述下方;分别标注。代码显示在帖子的末尾。

代码在 chrome 中正确显示(图 1),但在 Firefox、Internet Explorer(后面称为 IE)和 safari(图 2)中显示不正确。删除表格标题内容后,表格宽度显示正确(图 3)。我知道表格宽度计算正确,因为表格的<td>...</td> 部分在所有三个浏览器中始终正确。这个问题纯粹是在显示中,有人对如何解决这个问题有任何想法吗?

由于表格应该在 Chrome 中显示:

IE/Firefox/Safari中的表格:

IE/Firefox/Safari 中<th>... </th> 内容被清空时的表格(没有其他代码更改):

表格标题代码:

echo "<table class='main' style='width: 100%;' cellpadding='0' cellspacing='0'><tr>";
echo "<th style='width: 20%;'>Student Name</th>";
while($row2 = mysql_fetch_array($result2))
{
    extract($row2);
    echo "<th style='width: calc(80% / ".$numclasses.");'>**".$classname."**</th>";
}
echo "<th style='width: calc(80% / ".$numclasses.");'>**No Class**</th>";
...<insert correctly behaving <td>...</td> here...
echo "</table>";

【问题讨论】:

    标签: php html html-table width


    【解决方案1】:

    calc css 属性适用于最新版本的浏览器。您可以为一些较旧的浏览器使用供应商前缀。最好的办法是在 php 中计算计算,然后使用 echo 输出结果。在can i use calc() 中检查这个

    【讨论】:

    • 如何使用 php 计算宽度?使用百分比的百分比? (对不起,如果这对你来说是一个愚蠢的问题......)谢谢你让我知道它不起作用的原因是由于 CSS!
    • 您可以在 javascript 或 jquery 中获取元素宽度并将其划分,但由于您是动态输出它,我认为这是不可能的
    • 是否有可能在 PHP 中获取我需要的许多列,然后再运行 javascript? (我从来没有使用过 javascript - 更不用说 PHP 了......我会完全迷失在这种方式开始......)
    • check this stackoverflow question 您可以将脚本标签内的 php 变量作为 javascript 变量值输出
    • 非常感谢您的宝贵时间!我目前正在考虑这样做,它似乎开始起作用了!
    猜你喜欢
    • 2018-03-09
    • 2010-11-18
    • 2013-04-30
    • 1970-01-01
    • 2012-05-08
    • 2014-07-28
    • 1970-01-01
    • 2021-12-11
    • 1970-01-01
    相关资源
    最近更新 更多