【问题标题】:html rending of a prtion of data部分数据的html渲染
【发布时间】:2010-06-09 05:17:14
【问题描述】:

我有一个类似的部分

$myresult .= '<tbody>';
/*start printing the table wth feature and ratings */
for ($i = 1 ; $i < $numProperties; $i++){
  if($master_rating_properties['rating'.$i.'_name']){
    $myresult .= '<tr>';
    $myresult .= '<td width=\'22%\'>';
    $indfeature = 0;
    $indfeature = $row_product['property'.$i.'_avg'];
    $myresult .= $master_rating_properties['rating'.$i.'_name'].' ( '.$indfeature .')';
    $myresult .= '</td>';
    $myresult .= '<td colspan=\'0\' width=\'38%\' >';
    $tocheck = $indfeature;
    for($k = 0.5; $k <= 10.0; $k+=0.5){
      $tocheck = roundOff($tocheck);
      if(($tocheck) == $k) {
        $chk = "checked"; 
      } else { 
        $chk = ""; 
      }
      $myresult .= "<input class='star {split:2}' type='radio'";
      $myresult .= " name='drating$i' id='drating$i$k' value='$k'  '$chk'";
      $myresult .= " title='$k out of 10' disabled '/>";
    }
    /* for k loop end */
    /* added later ,was missing */
    $myresult .= '</td>';
    $myresult .= '</tr>';
  }
  /* end if loop */
}
/* end i for loop */
$myresult .= '</tbody>';
/* end tbody */    

效果很好,就像水平打印 10 颗星(单选按钮)一样。但很多时候,所有 10 颗星都变成垂直的。在几次浏览器刷新后,它又回到了水平位置。任何想法.y这会导致问题吗? tbody 标签是否会导致一些问题。

我在这里做了一个演示页面。但它与发布的代码不同。我恢复到旧代码的那个页面。所以将此演示链接发布到发生这种情况的另一个页面

http://abc.com/tempcollege 。这里的星星有时也会垂直出现。

【问题讨论】:

  • 你必须在没有 PHP 代码和标签的情况下询问它。它只是 HTML/CSS 问题
  • 请格式化代码,以免在阅读时伤害我们可怜的眼睛。
  • @col.Shrapnel -我也想知道是不是代码问题。所以写了完整的代码。 @Christian - 你需要什么格式。它的格式化仪式?
  • Christian 的意思是,我认为,由于渲染并因此显示的是 HTMl/CSS,因此您的问题在于 HTML/CSS 代码。所以没有必要让我们也挖掘 PHP 代码。只需给我们最终输出(例如,在浏览器中查看源代码并在此处发布)。
  • @theseion - 源代码太大,无法发布。 okie 会尝试给出部分数据。

标签: php html rendering


【解决方案1】:

首先是一个问题。为什么要使用表格来显示布局?表格用于表格数据。

鉴于您没有发布 html,我将不得不基于猜测。我猜 38% 的宽度不足以容纳 10 颗星的宽度。所以将该宽度更改为:

(星图的宽度) * 10 -> 以像素为单位

如果图像上有任何填充/边距/边框/等,则需要相应地调整宽度。

编辑:

好的,我现在看到了。问题来自一个顽皮的 div 和一个元素。 javascript做了一些fandangling来解决IE框模型问题......而且代码显然搞砸了。重新加载时,javascript 告诉

【讨论】:

  • @revil - 好吧,我相信你的话。说某个块它是这样发生的。但是页面中有星星的地方会变成垂直的。所以你的意思是说每个有宽度问题的地方?和 display: block 语句是否会导致这个问题?
  • 我无法重现该错误。您在哪个浏览器中查看此内容,您需要做什么才能看到问题?
  • 那是尼科,不是我……不过我更新了我的答案。这很可能是 javascript 的问题,因为它存在错误。你会从 js 的创建者那里得到更好的支持。 code.google.com/p/jquery-star-rating-plugin
  • @revil - 嘿,我用最新版本更新了 js,因为我有一个 1 版本的旧 js 文件。现在我尝试刷新 2-3 次。垂直制表符没有发生。嘿,从你身边检查一次,我想确保它不会发生。谢谢大家的帮助。
  • @revil - 我在另一个部分也有同样的问题。如果你能提供一些帮助,问题是stackoverflow.com/questions/2808359/…。会很棒的。
【解决方案2】:
猜你喜欢
  • 2014-12-30
  • 1970-01-01
  • 1970-01-01
  • 2013-10-06
  • 1970-01-01
  • 1970-01-01
  • 2020-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多