2014-09-23 110 views
0

所以我试图编辑IPB板内部并向subforums添加一些数据。 picture of forum由于继承属性,CSS文本对齐不适用

正如你所看到的文本信息(状态的球员平地图)是相一致的权利和事实的“地图”变量没有固定的lenght使得不均匀,所以他们不是全部在彼此之下。

我打印这一切都从PHP和试图添加一些样式,以迫使它对齐到左侧,但它不会工作。

if($_Query->details->tplayers==0) 
    { 
     $_FIScontent .= "Status: <img src=\"offline.gif\" alt=\"\"> <span style=\"color:red\"> [OFF]</span>"; 
     $_FIScontent .= "<br><a href=\"http://www.gametracker.com/server_info/" . $tip . ":27015/\" target=\"_blank\"><img src=\"gametracker.png\" border=\"0\" height=\"25\" width=\"75\"></a> "; 
     $_FIScontent .= "<a href=\"http://" . $tip . "/\" target=\"_blank\"><img src=\"site.png\" border=\"0\" height=\"25\" width=\"75\"></a> "; 
     echo $_FIScontent; 
     return $_FIScontent; 
    } 

    $_FIScontent .= "<div id=\"mata\" class=\"mata\" style=\" 
    text-align: left; 
    \"><table><tr>"; 
    $_FIScontent .= "<td>Status: <img src=\"online2.gif\" alt=\"\"> <span style=\"color:green\"> [ON]</span></td>"; 

    $_FIScontent .= "<td>"; 
    if($_Query->details->pplayers<10) 
     $_FIScontent .= "Players: <span style=\"color:red\">".$_BuildStats[SERVER_PLAYERS]."</span>"; 
    else if($_Query->details->pplayers<20) 
     $_FIScontent .= "Players: <span style=\"color:orange\">".$_BuildStats[SERVER_PLAYERS]."</span>"; 
    else 
     $_FIScontent .= "Players: <span style=\"color:green\">".$_BuildStats[SERVER_PLAYERS]."</span>"; 
    $_FIScontent .= "</td>"; 

    //$_FIScontent .= "<tr>"; 
    $_FIScontent .= "<td>Ping: ".$_BuildStats[SERVER_LATENTA]."ms</td>"; 
    $_FIScontent .= "<td>Harta: ".$_BuildStats[SERVER_MAP]."</td></table>"; 
    //$_FIScontent .= "</tr>"; 

    $_FIScontent .= "<table><td>"; 
    $_FIScontent .= "<a href=\"http://www.gametracker.com/server_info/" . $tip . ":27015/\" target=\"_blank\"><img src=\"gametracker.png\" border=\"0\" height=\"25\" width=\"75\"></a> "; 
    $_FIScontent .= "<a href=\"http://" . $tip . "/\" target=\"_blank\"><img src=\"site.png\" border=\"0\" height=\"25\" width=\"75\"></a>"; 
    $_FIScontent .= "<a href=\"steam://connect/" . $tip . ":27015/\" target=\"_blank\"><img src=\"connect.png\" border=\"0\" height=\"25\" width=\"75\"></a>"; 
    $_FIScontent .= "</td>"; 

    $_FIScontent .= "</table></div>"; 
    echo $_FIScontent; 
    return $_FIScontent; 

这里的链接,如果你想看看吧,希望这不是非法http://furien.b-zone.ro/query/wadap.php

有一个表,并为每个元素一个TD编辑 image of forum

$_FIScontent .= "<div id=\"mata\" class=\"mata\" style=\" 
    text-align: left; 
    \"><table><tr>"; 
    $_FIScontent .= "<td>Status: <img src=\"online2.gif\" alt=\"\"> <span style=\"color:green\"> [ON]</span></td>"; 

    $_FIScontent .= "<td>"; 
    if($_Query->details->pplayers<10) 
     $_FIScontent .= "Players: <span style=\"color:red\">".$_BuildStats[SERVER_PLAYERS]."</span>"; 
    else if($_Query->details->pplayers<20) 
     $_FIScontent .= "Players: <span style=\"color:orange\">".$_BuildStats[SERVER_PLAYERS]."</span>"; 
    else 
     $_FIScontent .= "Players: <span style=\"color:green\">".$_BuildStats[SERVER_PLAYERS]."</span>"; 
    $_FIScontent .= "</td>"; 

    //$_FIScontent .= "<tr>"; 
    $_FIScontent .= "<td>Ping: ".$_BuildStats[SERVER_LATENTA]."ms</td>"; 
    $_FIScontent .= "<td>Harta: ".$_BuildStats[SERVER_MAP]."</td>"; 
    //$_FIScontent .= "</tr>"; 

    $_FIScontent .= "<td>"; 
    $_FIScontent .= "<a href=\"http://www.gametracker.com/server_info/" . $tip . ":27015/\" target=\"_blank\"><img src=\"gametracker.png\" border=\"0\" height=\"25\" width=\"75\"></a> "; 
    $_FIScontent .= "</td>"; 
    $_FIScontent .= "<td>"; 
    $_FIScontent .= "<a href=\"http://" . $tip . "/\" target=\"_blank\"><img src=\"site.png\" border=\"0\" height=\"25\" width=\"75\"></a>"; 
    $_FIScontent .= "</td>"; 
    $_FIScontent .= "<td>"; 
    $_FIScontent .= "<a href=\"steam://connect/" . $tip . ":27015/\" target=\"_blank\"><img src=\"connect.png\" border=\"0\" height=\"25\" width=\"75\"></a>"; 
    $_FIScontent .= "</td>"; 

    $_FIScontent .= "</tr></table></div>"; 
    echo $_FIScontent; 
    return $_FIScontent; 
+0

我找不到你的代码有什么问题,你没有元素让它们一个接一个显示。 – emmanuel 2014-09-23 16:14:26

+0

有些事情我不明白,因为缺少tr关闭标签是为什么你使用新的表格的主题和答复?但更多的话题是,你的表中的每一行显示将被包装在它自己的tr – Mic1780 2014-09-23 16:16:46

+0

我已经搜索了很多。出于某种原因,不知何故,论坛模板的CSS强制它们像他们一样显示。我似乎无法摆脱论坛设置的任何属性(无法减少填充或任何内容)\ n缺少tr标签,因为我顶部有4个元素,底部有3个元素。同样论坛也会以相同的方式显示它们,填充在左边,所以根据数据的大小,表格列会被推开。 – 2014-09-23 16:17:07

回答

1

我设法停止来自你的setInterval的服务器调用,并看着DOM。它显示您的状态播放器ping和harta已经左对齐文本。它的行为方式是因为它没有遵循一致的表格结构。这意味着,因为每个表格结构在每行信息中都不相同,所以布局将会不同。

解决方法是使用单个表格来存放信息。每一栏信息都需要自己的td。对于主题和回复等信息,您可以在该列的td内创建一个新表。

+0

编辑了OP,进行了适当的编辑,数据仍然被推向左边 – 2014-09-23 16:46:54

+1

@AronH。每个“状态”部分都是它自己的表格。除非您为每个表格中的每个单元格分配了特定的宽度,或者将它们作为父表格的一部分,否则它们将分别调整为包含在其中的数据。 – 2014-09-23 16:51:31

+0

@RyanKinal是正确的。如果在td上没有设置宽度,则宽度被推断并且会变化。当信息全部在父表中时,推断的宽度将不会影响文本格式。每列都会正确对齐,并且所有列宽都相同。 – Mic1780 2014-09-23 16:54:08